Hi! > Pavel Machek wrote: > >@@ -1281,9 +1272,6 @@ > > > > spin_lock_irq(&bp->lock); > > > >-#if 0 > >- b44_dump_state(bp); > >-#endif > > b44_halt(bp); > > b44_free_rings(bp); > > bp->flags &= ~B44_FLAG_INIT_COMPLETE; > > > This is a debugging switch, not dead code. > > The rest is OK. Here's updated patch, please apply. Pavel --- tmp/linux/drivers/net/b44.c 2004-04-22 12:11:07.000000000 +0200 +++ linux/drivers/net/b44.c 2004-04-21 01:40:35.000000000 +0200 @@ -97,7 +97,7 @@ static void b44_halt(struct b44 *); static void b44_init_rings(struct b44 *); -static int b44_init_hw(struct b44 *); +static void b44_init_hw(struct b44 *); static int b44_wait_bit(struct b44 *bp, unsigned long reg, u32 bit, unsigned long timeout, const int clear) @@ -1181,7 +1181,7 @@ * packet processing. Invoked with bp->lock held. */ static void __b44_set_rx_mode(struct net_device *); -static int b44_init_hw(struct b44 *bp) +static void b44_init_hw(struct b44 *bp) { u32 val; @@ -1213,8 +1213,6 @@ val = br32(B44_ENET_CTRL); bw32(B44_ENET_CTRL, (val | ENET_CTRL_ENABLE)); - - return 0; } static int b44_open(struct net_device *dev) @@ -1233,9 +1231,7 @@ spin_lock_irq(&bp->lock); b44_init_rings(bp); - err = b44_init_hw(bp); - if (err) - goto err_out_noinit; + b44_init_hw(bp); bp->flags |= B44_FLAG_INIT_COMPLETE; spin_unlock_irq(&bp->lock); @@ -1250,11 +1246,6 @@ return 0; -err_out_noinit: - b44_halt(bp); - b44_free_rings(bp); - spin_unlock_irq(&bp->lock); - free_irq(dev->irq, dev); err_out_free: b44_free_consistent(bp); return err; @@ -1393,7 +1381,7 @@ return -EFAULT; switch (ethcmd) { - case ETHTOOL_GDRVINFO:{ + case ETHTOOL_GDRVINFO: { struct ethtool_drvinfo info = { ETHTOOL_GDRVINFO }; strcpy (info.driver, DRV_MODULE_NAME); strcpy (info.version, DRV_MODULE_VERSION); -- When do you have a heart between your knees? [Johanka's followup: and *two* hearts?] - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html