Commit 760f86d7 authored by Herbert Xu's avatar Herbert Xu Committed by Jeff Garzik

[PATCH] Fw: [Bugme-new] [Bug 4482] New: natsemi: incorrect initialization of...

[PATCH] Fw: [Bugme-new] [Bug 4482] New: natsemi: incorrect initialization of IPv6 Neighbor-discovery multicast

On Wed, Apr 13, 2005 at 05:36:42PM +0000, Andrew Morton wrote:
>            Summary: natsemi: incorrect initialization of IPv6 Neighbor-
>                     discovery multicast

I've got a pair of FA312 cards and this problem has bothered me
for ages.  This has finally prompted me to do something about it :)

Turns out that somebody wasn't following the documentation.  We were
doing 16-bit writes to 32-bit registers which led to some addresses
working and others not so lucky.

This patch should fix the problem.
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 88d7bd8c
...@@ -2433,9 +2433,9 @@ static void __set_rx_mode(struct net_device *dev) ...@@ -2433,9 +2433,9 @@ static void __set_rx_mode(struct net_device *dev)
rx_mode = RxFilterEnable | AcceptBroadcast rx_mode = RxFilterEnable | AcceptBroadcast
| AcceptMulticast | AcceptMyPhys; | AcceptMulticast | AcceptMyPhys;
for (i = 0; i < 64; i += 2) { for (i = 0; i < 64; i += 2) {
writew(HASH_TABLE + i, ioaddr + RxFilterAddr); writel(HASH_TABLE + i, ioaddr + RxFilterAddr);
writew((mc_filter[i+1]<<8) + mc_filter[i], writel((mc_filter[i + 1] << 8) + mc_filter[i],
ioaddr + RxFilterData); ioaddr + RxFilterData);
} }
} }
writel(rx_mode, ioaddr + RxFilterAddr); writel(rx_mode, ioaddr + RxFilterAddr);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment