Commit 899110fe authored by Michael Buesch's avatar Michael Buesch Committed by John W. Linville

b43/legacy: Fix usage of host_pci pointer

We must check the bustype before using the host_pci pointer.
Signed-off-by: default avatarMichael Buesch <mb@bu3sch.de>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 332c5566
...@@ -4671,7 +4671,7 @@ static int b43_wireless_core_attach(struct b43_wldev *dev) ...@@ -4671,7 +4671,7 @@ static int b43_wireless_core_attach(struct b43_wldev *dev)
{ {
struct b43_wl *wl = dev->wl; struct b43_wl *wl = dev->wl;
struct ssb_bus *bus = dev->dev->bus; struct ssb_bus *bus = dev->dev->bus;
struct pci_dev *pdev = bus->host_pci; struct pci_dev *pdev = (bus->bustype == SSB_BUSTYPE_PCI) ? bus->host_pci : NULL;
int err; int err;
bool have_2ghz_phy = 0, have_5ghz_phy = 0; bool have_2ghz_phy = 0, have_5ghz_phy = 0;
u32 tmp; u32 tmp;
...@@ -4804,7 +4804,7 @@ static int b43_one_core_attach(struct ssb_device *dev, struct b43_wl *wl) ...@@ -4804,7 +4804,7 @@ static int b43_one_core_attach(struct ssb_device *dev, struct b43_wl *wl)
if (!list_empty(&wl->devlist)) { if (!list_empty(&wl->devlist)) {
/* We are not the first core on this chip. */ /* We are not the first core on this chip. */
pdev = dev->bus->host_pci; pdev = (dev->bus->bustype == SSB_BUSTYPE_PCI) ? dev->bus->host_pci : NULL;
/* Only special chips support more than one wireless /* Only special chips support more than one wireless
* core, although some of the other chips have more than * core, although some of the other chips have more than
* one wireless core as well. Check for this and * one wireless core as well. Check for this and
......
...@@ -3592,7 +3592,7 @@ static int b43legacy_wireless_core_attach(struct b43legacy_wldev *dev) ...@@ -3592,7 +3592,7 @@ static int b43legacy_wireless_core_attach(struct b43legacy_wldev *dev)
{ {
struct b43legacy_wl *wl = dev->wl; struct b43legacy_wl *wl = dev->wl;
struct ssb_bus *bus = dev->dev->bus; struct ssb_bus *bus = dev->dev->bus;
struct pci_dev *pdev = bus->host_pci; struct pci_dev *pdev = (bus->bustype == SSB_BUSTYPE_PCI) ? bus->host_pci : NULL;
int err; int err;
int have_bphy = 0; int have_bphy = 0;
int have_gphy = 0; int have_gphy = 0;
...@@ -3706,7 +3706,7 @@ static int b43legacy_one_core_attach(struct ssb_device *dev, ...@@ -3706,7 +3706,7 @@ static int b43legacy_one_core_attach(struct ssb_device *dev,
if (!list_empty(&wl->devlist)) { if (!list_empty(&wl->devlist)) {
/* We are not the first core on this chip. */ /* We are not the first core on this chip. */
pdev = dev->bus->host_pci; pdev = (dev->bus->bustype == SSB_BUSTYPE_PCI) ? dev->bus->host_pci : NULL;
/* Only special chips support more than one wireless /* Only special chips support more than one wireless
* core, although some of the other chips have more than * core, although some of the other chips have more than
* one wireless core as well. Check for this and * one wireless core as well. Check for this and
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment