From: Gary Zambrano Date: Wed, 29 Mar 2006 22:12:05 +0000 (-0500) Subject: b44: fix force mac address before ifconfig up X-Git-Tag: v2.6.17-rc1~163 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=5c5131297db57b501f371ab53c40343eac6f2af7;p=linux-2.6-omap-h63xx.git b44: fix force mac address before ifconfig up Initializing the b44 MAC & PCI functional blocks in the controller must occur inside init_one(). This will allow access to the MAC registers. The controller was being powered up in b44_open() which would not allow access to the registers before ifconfig was up. Philip Kohlbecher found this bug. Signed-off-by: Gary Zambrano --- diff --git a/drivers/net/b44.c b/drivers/net/b44.c index c3267e4e1bb..2eab2a88c7b 100644 --- a/drivers/net/b44.c +++ b/drivers/net/b44.c @@ -2033,6 +2033,11 @@ static int __devinit b44_init_one(struct pci_dev *pdev, pci_save_state(bp->pdev); + /* Chip reset provides power to the b44 MAC & PCI cores, which + * is necessary for MAC register access. + */ + b44_chip_reset(bp); + printk(KERN_INFO "%s: Broadcom 4400 10/100BaseT Ethernet ", dev->name); for (i = 0; i < 6; i++) printk("%2.2x%c", dev->dev_addr[i],