diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2005-04-16 16:24:16 +1000 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-05-15 18:18:56 -0400 |
commit | 760f86d78d92f39e2ceb55b40f0885eb755c8c2f (patch) | |
tree | dd779d819fbda486cfdcc6ecd28afa4c1c40373b /drivers/net/natsemi.c | |
parent | 88d7bd8cb9eb8d64bf7997600b0d64f7834047c5 (diff) | |
download | lwn-760f86d78d92f39e2ceb55b40f0885eb755c8c2f.tar.gz lwn-760f86d78d92f39e2ceb55b40f0885eb755c8c2f.zip |
[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: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/net/natsemi.c')
-rw-r--r-- | drivers/net/natsemi.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/natsemi.c b/drivers/net/natsemi.c index 223bdadd4c0d..babb59e146ea 100644 --- a/drivers/net/natsemi.c +++ b/drivers/net/natsemi.c @@ -2433,9 +2433,9 @@ static void __set_rx_mode(struct net_device *dev) rx_mode = RxFilterEnable | AcceptBroadcast | AcceptMulticast | AcceptMyPhys; for (i = 0; i < 64; i += 2) { - writew(HASH_TABLE + i, ioaddr + RxFilterAddr); - writew((mc_filter[i+1]<<8) + mc_filter[i], - ioaddr + RxFilterData); + writel(HASH_TABLE + i, ioaddr + RxFilterAddr); + writel((mc_filter[i + 1] << 8) + mc_filter[i], + ioaddr + RxFilterData); } } writel(rx_mode, ioaddr + RxFilterAddr); |