Re: PROBLEM: Network hanging - Tulip driver with Netgear (Lite-On)

Jeff Garzik (jgarzik@mandrakesoft.com)
Mon, 26 Feb 2001 15:10:52 -0500


Manfred Spraul wrote:
>
> I think I found the bug:
>
> Someone (Jeff?) removed the line
>
> tp->advertising[phy_idx++] = reg4;
>
> from tulip/tulip_core.c
>
> pnic_check_duplex uses that variable :-(
>
> There are 2 workarounds:
>
> * change pnic_check_duplex:
> s/tp->advertising[0]/tp->mii_advertise/g
>
> * remove the new mii_advertise variable and replace it with
> 'tp->advertising[i]'.

mii_advertise is what MII is currently advertising on the current
media. tp->advertising is per-phy, on the other hand.

Pat, Manfred, in pnic_check_duplex, make this change:
> - negotiated = mii_reg5 & tp->advertising[0];
> + negotiated = mii_reg5 & tulip_mdio_read(dev, tp->phys[0], 4);

and let me know how it goes. I'm tempted to just remove
tp->advertising[] altogether.

Jeff

-- 
Jeff Garzik       | "You see, in this world there's two kinds of
Building 1024     |  people, my friend: Those with loaded guns
MandrakeSoft      |  and those who dig. You dig."  --Blondie
-
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/