svn commit: r305443 - head/sys/dev/bwn
Landon J. Fuller
landonf at FreeBSD.org
Mon Sep 5 21:55:29 UTC 2016
Author: landonf
Date: Mon Sep 5 21:55:27 2016
New Revision: 305443
URL: https://svnweb.freebsd.org/changeset/base/305443
Log:
bwn(4): ignore BCM4321's unpopulated USB11 host controller core.
Broadcom Intensi-fi chipsets provided a common set of IP cores; on PCI/PCIe
devices, the USB11 host controller is left floating.
Approved by: adrian (mentor, implicit)
Modified:
head/sys/dev/bwn/if_bwn_pci.c
head/sys/dev/bwn/if_bwn_pcivar.h
Modified: head/sys/dev/bwn/if_bwn_pci.c
==============================================================================
--- head/sys/dev/bwn/if_bwn_pci.c Mon Sep 5 21:48:16 2016 (r305442)
+++ head/sys/dev/bwn/if_bwn_pci.c Mon Sep 5 21:55:27 2016 (r305443)
@@ -84,10 +84,12 @@ static const struct bwn_pci_device siba_
BWN_BCM_DEV(BCM4318_D11A, "BCM4318 802.11a",
BWN_QUIRK_UNTESTED|BWN_QUIRK_WLAN_DUALCORE),
- BWN_BCM_DEV(BCM4321_D11N, "BCM4321 802.11n Dual-Band", 0),
- BWN_BCM_DEV(BCM4321_D11N2G, "BCM4321 802.11n 2GHz", 0),
+ BWN_BCM_DEV(BCM4321_D11N, "BCM4321 802.11n Dual-Band",
+ BWN_QUIRK_USBH_UNPOPULATED),
+ BWN_BCM_DEV(BCM4321_D11N2G, "BCM4321 802.11n 2GHz",
+ BWN_QUIRK_USBH_UNPOPULATED),
BWN_BCM_DEV(BCM4321_D11N2G, "BCM4321 802.11n 5GHz",
- BWN_QUIRK_UNTESTED),
+ BWN_QUIRK_UNTESTED|BWN_QUIRK_USBH_UNPOPULATED),
BWN_BCM_DEV(BCM4322_D11N, "BCM4322 802.11n Dual-Band", 0),
BWN_BCM_DEV(BCM4322_D11N2G, "BCM4322 802.11n 2GHz",
@@ -263,6 +265,9 @@ bwn_pci_is_core_disabled(device_t dev, d
case BHND_DEVCLASS_ENET_MAC:
case BHND_DEVCLASS_ENET_PHY:
return ((sc->quirks & BWN_QUIRK_ENET_HW_UNPOPULATED) != 0);
+
+ case BHND_DEVCLASS_USB_HOST:
+ return ((sc->quirks & BWN_QUIRK_USBH_UNPOPULATED) != 0);
default:
return (false);
Modified: head/sys/dev/bwn/if_bwn_pcivar.h
==============================================================================
--- head/sys/dev/bwn/if_bwn_pcivar.h Mon Sep 5 21:48:16 2016 (r305442)
+++ head/sys/dev/bwn/if_bwn_pcivar.h Mon Sep 5 21:55:27 2016 (r305443)
@@ -68,6 +68,13 @@ enum {
* this quirk to treat these cores as unpopulated.
*/
BWN_QUIRK_ENET_HW_UNPOPULATED = 1<<2,
+
+ /**
+ * Some PCI/PCIe "Intensi-fi" chipsets shipped with floating USB
+ * host controller cores; set this quirk to treat these cores as
+ * unpopulated.
+ */
+ BWN_QUIRK_USBH_UNPOPULATED = 1<<3,
};
/* PCI device descriptor */
More information about the svn-src-all
mailing list