Linux MIPS Architecture development
 help / color / mirror / Atom feed
* Re: pcnet32 (maybe more) hosed in 2.4.3
       [not found] ` <Pine.LNX.4.30.0103311541300.406-100000@fs131-224.f-secure.com>
@ 2001-04-03 18:21   ` Ralf Baechle
  2001-04-03 18:21     ` Ralf Baechle
  2001-04-04 13:35     ` Carsten Langgaard
  0 siblings, 2 replies; 3+ messages in thread
From: Ralf Baechle @ 2001-04-03 18:21 UTC (permalink / raw)
  To: Szabolcs Szakacsits
  Cc: Scott G. Miller, linux-kernel, Andy Carlson, Carsten Langgaard,
	linux-mips

Carsten,

seems your pcnet32 changes which made it into 2.4.3 are causing trouble
on i386 machines.  Can you try to solve that problem?

On Sat, Mar 31, 2001 at 03:58:11PM +0200, Szabolcs Szakacsits wrote:

> On Fri, 30 Mar 2001, Scott G. Miller wrote:
> 
> > Linux 2.4.3, Debian Woody.  2.4.2 works without problems.  However, in
> > 2.4.3, pcnet32 loads, gives an error message:
> 
> 2.4.3 (and -ac's) are also broken as guest in VMWware due to the pcnet32
> changes [doing 32 bit IO on 16 bit regs on the 79C970A controller].
> Reverting this part of patch-2.4.3 below made things work again.
> 
> 	Szaka
> 
> @@ -528,11 +535,13 @@
>      pcnet32_dwio_reset(ioaddr);
>      pcnet32_wio_reset(ioaddr);
> 
> -    if (pcnet32_wio_read_csr (ioaddr, 0) == 4 && pcnet32_wio_check (ioaddr)) {
> -       a = &pcnet32_wio;
> +    /* Important to do the check for dwio mode first. */
> +    if (pcnet32_dwio_read_csr(ioaddr, 0) == 4 && pcnet32_dwio_check(ioaddr)) {
> +        a = &pcnet32_dwio;
>      } else {
> -       if (pcnet32_dwio_read_csr (ioaddr, 0) == 4 && pcnet32_dwio_check(ioaddr)) {
> -           a = &pcnet32_dwio;
> +        if (pcnet32_wio_read_csr(ioaddr, 0) == 4 &&
> +           pcnet32_wio_check(ioaddr)) {
> +           a = &pcnet32_wio;
>         } else
>             return -ENODEV;
>      }
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

  Ralf

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: pcnet32 (maybe more) hosed in 2.4.3
  2001-04-03 18:21   ` pcnet32 (maybe more) hosed in 2.4.3 Ralf Baechle
@ 2001-04-03 18:21     ` Ralf Baechle
  2001-04-04 13:35     ` Carsten Langgaard
  1 sibling, 0 replies; 3+ messages in thread
From: Ralf Baechle @ 2001-04-03 18:21 UTC (permalink / raw)
  To: Szabolcs Szakacsits
  Cc: Scott G. Miller, linux-kernel, Andy Carlson, Carsten Langgaard,
	linux-mips

Carsten,

seems your pcnet32 changes which made it into 2.4.3 are causing trouble
on i386 machines.  Can you try to solve that problem?

On Sat, Mar 31, 2001 at 03:58:11PM +0200, Szabolcs Szakacsits wrote:

> On Fri, 30 Mar 2001, Scott G. Miller wrote:
> 
> > Linux 2.4.3, Debian Woody.  2.4.2 works without problems.  However, in
> > 2.4.3, pcnet32 loads, gives an error message:
> 
> 2.4.3 (and -ac's) are also broken as guest in VMWware due to the pcnet32
> changes [doing 32 bit IO on 16 bit regs on the 79C970A controller].
> Reverting this part of patch-2.4.3 below made things work again.
> 
> 	Szaka
> 
> @@ -528,11 +535,13 @@
>      pcnet32_dwio_reset(ioaddr);
>      pcnet32_wio_reset(ioaddr);
> 
> -    if (pcnet32_wio_read_csr (ioaddr, 0) == 4 && pcnet32_wio_check (ioaddr)) {
> -       a = &pcnet32_wio;
> +    /* Important to do the check for dwio mode first. */
> +    if (pcnet32_dwio_read_csr(ioaddr, 0) == 4 && pcnet32_dwio_check(ioaddr)) {
> +        a = &pcnet32_dwio;
>      } else {
> -       if (pcnet32_dwio_read_csr (ioaddr, 0) == 4 && pcnet32_dwio_check(ioaddr)) {
> -           a = &pcnet32_dwio;
> +        if (pcnet32_wio_read_csr(ioaddr, 0) == 4 &&
> +           pcnet32_wio_check(ioaddr)) {
> +           a = &pcnet32_wio;
>         } else
>             return -ENODEV;
>      }
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

  Ralf

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: pcnet32 (maybe more) hosed in 2.4.3
  2001-04-03 18:21   ` pcnet32 (maybe more) hosed in 2.4.3 Ralf Baechle
  2001-04-03 18:21     ` Ralf Baechle
@ 2001-04-04 13:35     ` Carsten Langgaard
  1 sibling, 0 replies; 3+ messages in thread
From: Carsten Langgaard @ 2001-04-04 13:35 UTC (permalink / raw)
  To: Ralf Baechle
  Cc: Szabolcs Szakacsits, Scott G. Miller, linux-kernel, Andy Carlson,
	linux-mips

I'm not sure what the problem is, but the whole deal about checking whether the
controller runs in 16 bit or 32 bit mode, is a little bit tricky.
There doesn't seem to be a clean way to do the check, so it's done by writing a certain
pattern to a register and read it back again.
Doing the check for 32 bit mode first seems to be the right thing to do, but it's
apparently breaks thing for some people with older chipsets.
It work fine on my site in both 16 bit and 32 bit mode, though (I'm using an AMD
Am97C973 chipset).
I can't remember exactly if that part of the fix really was necessary to get the driver
work in 32 bit mode, but at least the rest of the patch is necessary (it has been some
time since I made this fix and I originally did it in the 2.2.12 sources).
So I guess reverting the suggested part of the patch is appropriate.
I'm terrible sorry for causing any inconvenience.

/Carsten

Ralf Baechle wrote:

> Carsten,
>
> seems your pcnet32 changes which made it into 2.4.3 are causing trouble
> on i386 machines.  Can you try to solve that problem?
>
> On Sat, Mar 31, 2001 at 03:58:11PM +0200, Szabolcs Szakacsits wrote:
>
> > On Fri, 30 Mar 2001, Scott G. Miller wrote:
> >
> > > Linux 2.4.3, Debian Woody.  2.4.2 works without problems.  However, in
> > > 2.4.3, pcnet32 loads, gives an error message:
> >
> > 2.4.3 (and -ac's) are also broken as guest in VMWware due to the pcnet32
> > changes [doing 32 bit IO on 16 bit regs on the 79C970A controller].
> > Reverting this part of patch-2.4.3 below made things work again.
> >
> >       Szaka
> >
> > @@ -528,11 +535,13 @@
> >      pcnet32_dwio_reset(ioaddr);
> >      pcnet32_wio_reset(ioaddr);
> >
> > -    if (pcnet32_wio_read_csr (ioaddr, 0) == 4 && pcnet32_wio_check (ioaddr)) {
> > -       a = &pcnet32_wio;
> > +    /* Important to do the check for dwio mode first. */
> > +    if (pcnet32_dwio_read_csr(ioaddr, 0) == 4 && pcnet32_dwio_check(ioaddr)) {
> > +        a = &pcnet32_dwio;
> >      } else {
> > -       if (pcnet32_dwio_read_csr (ioaddr, 0) == 4 && pcnet32_dwio_check(ioaddr)) {
> > -           a = &pcnet32_dwio;
> > +        if (pcnet32_wio_read_csr(ioaddr, 0) == 4 &&
> > +           pcnet32_wio_check(ioaddr)) {
> > +           a = &pcnet32_wio;
> >         } else
> >             return -ENODEV;
> >      }
> >
> >
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at  http://www.tux.org/lkml/
>
>   Ralf

--
_    _ ____  ___   Carsten Langgaard   Mailto:carstenl@mips.com
|\  /|||___)(___   MIPS Denmark        Direct: +45 4486 5527
| \/ |||    ____)  Lautrupvang 4B      Switch: +45 4486 5555
  TECHNOLOGIES     2750 Ballerup       Fax...: +45 4486 5556
                   Denmark             http://www.mips.com

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2001-04-04 13:39 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20010330190137.A426@indiana.edu>
     [not found] ` <Pine.LNX.4.30.0103311541300.406-100000@fs131-224.f-secure.com>
2001-04-03 18:21   ` pcnet32 (maybe more) hosed in 2.4.3 Ralf Baechle
2001-04-03 18:21     ` Ralf Baechle
2001-04-04 13:35     ` Carsten Langgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox