aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/brcm80211/brcmsmac
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2012-04-28 20:50:41 -0400
committerJohn W. Linville <linville@tuxdriver.com>2012-05-16 12:45:26 -0400
commit00bcda400434039db38fbfd26aef6090129d8c2c (patch)
tree8895c1e2d03d1e4b5b47b7fe85d1344f49f610f8 /drivers/net/wireless/brcm80211/brcmsmac
parent270e38d0085e835973e38575b40e9c769e2823c5 (diff)
brcmsmac: do not access host_pci
The irq number is copied from the PCIe host device to the bcma cores so just request it using the bcma core device. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Tested-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/brcm80211/brcmsmac')
-rw-r--r--drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
index b8350ff9e8c6..50f92a0b7c41 100644
--- a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
+++ b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
@@ -769,7 +769,7 @@ void brcms_dpc(unsigned long data)
769 * Precondition: Since this function is called in brcms_pci_probe() context, 769 * Precondition: Since this function is called in brcms_pci_probe() context,
770 * no locking is required. 770 * no locking is required.
771 */ 771 */
772static int brcms_request_fw(struct brcms_info *wl, struct pci_dev *pdev) 772static int brcms_request_fw(struct brcms_info *wl, struct bcma_device *pdev)
773{ 773{
774 int status; 774 int status;
775 struct device *device = &pdev->dev; 775 struct device *device = &pdev->dev;
@@ -1021,7 +1021,7 @@ static struct brcms_info *brcms_attach(struct bcma_device *pdev)
1021 spin_lock_init(&wl->isr_lock); 1021 spin_lock_init(&wl->isr_lock);
1022 1022
1023 /* prepare ucode */ 1023 /* prepare ucode */
1024 if (brcms_request_fw(wl, pdev->bus->host_pci) < 0) { 1024 if (brcms_request_fw(wl, pdev) < 0) {
1025 wiphy_err(wl->wiphy, "%s: Failed to find firmware usually in " 1025 wiphy_err(wl->wiphy, "%s: Failed to find firmware usually in "
1026 "%s\n", KBUILD_MODNAME, "/lib/firmware/brcm"); 1026 "%s\n", KBUILD_MODNAME, "/lib/firmware/brcm");
1027 brcms_release_fw(wl); 1027 brcms_release_fw(wl);
@@ -1042,12 +1042,12 @@ static struct brcms_info *brcms_attach(struct bcma_device *pdev)
1042 wl->pub->ieee_hw = hw; 1042 wl->pub->ieee_hw = hw;
1043 1043
1044 /* register our interrupt handler */ 1044 /* register our interrupt handler */
1045 if (request_irq(pdev->bus->host_pci->irq, brcms_isr, 1045 if (request_irq(pdev->irq, brcms_isr,
1046 IRQF_SHARED, KBUILD_MODNAME, wl)) { 1046 IRQF_SHARED, KBUILD_MODNAME, wl)) {
1047 wiphy_err(wl->wiphy, "wl%d: request_irq() failed\n", unit); 1047 wiphy_err(wl->wiphy, "wl%d: request_irq() failed\n", unit);
1048 goto fail; 1048 goto fail;
1049 } 1049 }
1050 wl->irq = pdev->bus->host_pci->irq; 1050 wl->irq = pdev->irq;
1051 1051
1052 /* register module */ 1052 /* register module */
1053 brcms_c_module_register(wl->pub, "linux", wl, NULL); 1053 brcms_c_module_register(wl->pub, "linux", wl, NULL);
@@ -1097,7 +1097,7 @@ static int __devinit brcms_bcma_probe(struct bcma_device *pdev)
1097 1097
1098 dev_info(&pdev->dev, "mfg %x core %x rev %d class %d irq %d\n", 1098 dev_info(&pdev->dev, "mfg %x core %x rev %d class %d irq %d\n",
1099 pdev->id.manuf, pdev->id.id, pdev->id.rev, pdev->id.class, 1099 pdev->id.manuf, pdev->id.id, pdev->id.rev, pdev->id.class,
1100 pdev->bus->host_pci->irq); 1100 pdev->irq);
1101 1101
1102 if ((pdev->id.manuf != BCMA_MANUF_BCM) || 1102 if ((pdev->id.manuf != BCMA_MANUF_BCM) ||
1103 (pdev->id.id != BCMA_CORE_80211)) 1103 (pdev->id.id != BCMA_CORE_80211))