ssb: Ignore dangling ethernet cores on wireless devices
Some Broadcom based wireless devices contain dangling ethernet cores. This triggers the ssb probing mechanism and tries to load the b44 driver on this core. Ignore the dangling core in the ssb core scanning code to avoid access to the core and failure of b44 probing. Signed-off-by: Michael Buesch <mb@bu3sch.de> Tested-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Родитель
3b5c5827d1
Коммит
ed70c6e60e
|
@ -420,6 +420,16 @@ int ssb_bus_scan(struct ssb_bus *bus,
|
||||||
bus->pcicore.dev = dev;
|
bus->pcicore.dev = dev;
|
||||||
#endif /* CONFIG_SSB_DRIVER_PCICORE */
|
#endif /* CONFIG_SSB_DRIVER_PCICORE */
|
||||||
break;
|
break;
|
||||||
|
case SSB_DEV_ETHERNET:
|
||||||
|
if (bus->bustype == SSB_BUSTYPE_PCI) {
|
||||||
|
if (bus->host_pci->vendor == PCI_VENDOR_ID_BROADCOM &&
|
||||||
|
(bus->host_pci->device & 0xFF00) == 0x4300) {
|
||||||
|
/* This is a dangling ethernet core on a
|
||||||
|
* wireless device. Ignore it. */
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче