SVN-Revision: 2999
This commit is contained in:
Felix Fietkau 2006-01-16 21:23:29 +00:00
parent ed03d79e8f
commit b8c0a9a1ab

View File

@ -1,6 +1,6 @@
diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
--- linux.old/drivers/net/b44.c 2006-01-16 20:35:09.203794500 +0100 --- linux.old/drivers/net/b44.c 2006-01-16 20:35:09.203794500 +0100
+++ linux.dev/drivers/net/b44.c 2006-01-16 20:40:29.023782000 +0100 +++ linux.dev/drivers/net/b44.c 2006-01-16 22:20:45.631180500 +0100
@@ -1,7 +1,9 @@ @@ -1,7 +1,9 @@
-/* b44.c: Broadcom 4400 device driver. -/* b44.c: Broadcom 4400 device driver.
+/* b44.c: Broadcom 4400/47xx device driver. +/* b44.c: Broadcom 4400/47xx device driver.
@ -562,7 +562,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
out: out:
return err; return err;
} }
@@ -1865,22 +2243,54 @@ @@ -1865,22 +2243,55 @@
static int __devinit b44_get_invariants(struct b44 *bp) static int __devinit b44_get_invariants(struct b44 *bp)
{ {
u8 eeprom[128]; u8 eeprom[128];
@ -579,10 +579,12 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
- bp->dev->dev_addr[4] = eeprom[83]; - bp->dev->dev_addr[4] = eeprom[83];
- bp->dev->dev_addr[5] = eeprom[82]; - bp->dev->dev_addr[5] = eeprom[82];
- memcpy(bp->dev->perm_addr, bp->dev->dev_addr, bp->dev->addr_len); - memcpy(bp->dev->perm_addr, bp->dev->dev_addr, bp->dev->addr_len);
-
- bp->phy_addr = eeprom[90] & 0x1f;
+ u8 buf[32]; + u8 buf[32];
+ int err = 0; + int err = 0;
+ unsigned long flags;
- bp->phy_addr = eeprom[90] & 0x1f; +
+#ifdef CONFIG_BCM947XX +#ifdef CONFIG_BCM947XX
+ if (bp->pdev->device == PCI_DEVICE_ID_BCM4713) { + if (bp->pdev->device == PCI_DEVICE_ID_BCM4713) {
+ /* + /*
@ -631,7 +633,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
/* With this, plus the rx_header prepended to the data by the /* With this, plus the rx_header prepended to the data by the
* hardware, we'll land the ethernet header on a 2-byte boundary. * hardware, we'll land the ethernet header on a 2-byte boundary.
*/ */
@@ -1889,11 +2299,7 @@ @@ -1889,11 +2300,7 @@
bp->imask = IMASK_DEF; bp->imask = IMASK_DEF;
bp->core_unit = ssb_core_unit(bp); bp->core_unit = ssb_core_unit(bp);
@ -643,7 +645,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
out: out:
return err; return err;
} }
@@ -2032,11 +2438,17 @@ @@ -2032,11 +2439,17 @@
pci_save_state(bp->pdev); pci_save_state(bp->pdev);