|
@@ -113,13 +113,15 @@ static int b43_modparam_pio = 0;
|
|
|
module_param_named(pio, b43_modparam_pio, int, 0644);
|
|
|
MODULE_PARM_DESC(pio, "Use PIO accesses by default: 0=DMA, 1=PIO");
|
|
|
|
|
|
+static int modparam_allhwsupport = !IS_ENABLED(CONFIG_BRCMSMAC);
|
|
|
+module_param_named(allhwsupport, modparam_allhwsupport, int, 0444);
|
|
|
+MODULE_PARM_DESC(allhwsupport, "Enable support for all hardware (even it if overlaps with the brcmsmac driver)");
|
|
|
+
|
|
|
#ifdef CONFIG_B43_BCMA
|
|
|
static const struct bcma_device_id b43_bcma_tbl[] = {
|
|
|
BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_80211, 0x11, BCMA_ANY_CLASS),
|
|
|
-#ifdef CONFIG_B43_BCMA_EXTRA
|
|
|
BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_80211, 0x17, BCMA_ANY_CLASS),
|
|
|
BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_80211, 0x18, BCMA_ANY_CLASS),
|
|
|
-#endif
|
|
|
BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_80211, 0x1D, BCMA_ANY_CLASS),
|
|
|
BCMA_CORETABLE_END
|
|
|
};
|
|
@@ -5396,6 +5398,12 @@ static int b43_bcma_probe(struct bcma_device *core)
|
|
|
struct b43_wl *wl;
|
|
|
int err;
|
|
|
|
|
|
+ if (!modparam_allhwsupport &&
|
|
|
+ (core->id.rev == 0x17 || core->id.rev == 0x18)) {
|
|
|
+ pr_err("Support for cores revisions 0x17 and 0x18 disabled by module param allhwsupport=0. Try b43.allhwsupport=1\n");
|
|
|
+ return -ENOTSUPP;
|
|
|
+ }
|
|
|
+
|
|
|
dev = b43_bus_dev_bcma_init(core);
|
|
|
if (!dev)
|
|
|
return -ENODEV;
|