mirror of
https://github.com/torvalds/linux.git
synced 2024-12-25 20:32:22 +00:00
b43: Add more btcoexist workarounds
This adds more workarounds for devices with broken BT bits. Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
a259d6a45b
commit
9fc3845835
@ -4423,6 +4423,12 @@ static int b43_one_core_attach(struct ssb_device *dev, struct b43_wl *wl)
|
||||
return err;
|
||||
}
|
||||
|
||||
#define IS_PDEV(pdev, _vendor, _device, _subvendor, _subdevice) ( \
|
||||
(pdev->vendor == PCI_VENDOR_ID_##_vendor) && \
|
||||
(pdev->device == _device) && \
|
||||
(pdev->subsystem_vendor == PCI_VENDOR_ID_##_subvendor) && \
|
||||
(pdev->subsystem_device == _subdevice) )
|
||||
|
||||
static void b43_sprom_fixup(struct ssb_bus *bus)
|
||||
{
|
||||
struct pci_dev *pdev;
|
||||
@ -4436,10 +4442,9 @@ static void b43_sprom_fixup(struct ssb_bus *bus)
|
||||
bus->sprom.boardflags_lo |= B43_BFL_PACTRL;
|
||||
if (bus->bustype == SSB_BUSTYPE_PCI) {
|
||||
pdev = bus->host_pci;
|
||||
if (pdev->vendor == PCI_VENDOR_ID_BROADCOM &&
|
||||
pdev->device == 0x4318 &&
|
||||
pdev->subsystem_vendor == PCI_VENDOR_ID_ASUSTEK &&
|
||||
pdev->subsystem_device == 0x100F)
|
||||
if (IS_PDEV(pdev, BROADCOM, 0x4318, ASUSTEK, 0x100F) ||
|
||||
IS_PDEV(pdev, BROADCOM, 0x4320, LINKSYS, 0x0015) ||
|
||||
IS_PDEV(pdev, BROADCOM, 0x4320, LINKSYS, 0x0013))
|
||||
bus->sprom.boardflags_lo &= ~B43_BFL_BTCOEXIST;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user