diff options
author | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2011-06-10 22:30:30 +0400 |
---|---|---|
committer | Wey-Yi Guy <wey-yi.w.guy@intel.com> | 2011-06-18 19:18:17 +0400 |
commit | 08321c062f77e379c4a539f1522220b83ab1e84e (patch) | |
tree | 35faf11f885e60d2da7de4f72f4d86d184216d5e /drivers/net/wireless/iwlwifi/iwl-agn.c | |
parent | 85aed7c48113dfcdc913008481c46346af0db69e (diff) | |
download | linux-08321c062f77e379c4a539f1522220b83ab1e84e.tar.xz |
iwlagn: add a get_irq method to iwl_bus_ops and use it
In order to remove a few more dereference to priv->pdev that will be killed
[Asoon, there is now a method to get the IRQ number.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-agn.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index 1ff8e4b3e960..e2b319f3c5f8 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c @@ -3610,10 +3610,11 @@ int iwl_probe(void *bus_specific, struct iwl_bus_ops *bus_ops, ********************/ iwl_alloc_isr_ict(priv); - err = request_irq(priv->pci_dev->irq, iwl_isr_ict, + err = request_irq(priv->bus.ops->get_irq(&priv->bus), iwl_isr_ict, IRQF_SHARED, DRV_NAME, priv); if (err) { - IWL_ERR(priv, "Error allocating IRQ %d\n", priv->pci_dev->irq); + IWL_ERR(priv, "Error allocating IRQ %d\n", + priv->bus.ops->get_irq(&priv->bus)); goto out_uninit_drv; } @@ -3650,7 +3651,7 @@ int iwl_probe(void *bus_specific, struct iwl_bus_ops *bus_ops, out_destroy_workqueue: destroy_workqueue(priv->workqueue); priv->workqueue = NULL; - free_irq(priv->pci_dev->irq, priv); + free_irq(priv->bus.ops->get_irq(&priv->bus), priv); iwl_free_isr_ict(priv); out_uninit_drv: iwl_uninit_drv(priv); @@ -3722,7 +3723,7 @@ void __devexit iwl_remove(struct iwl_priv * priv) priv->workqueue = NULL; iwl_free_traffic_mem(priv); - free_irq(priv->pci_dev->irq, priv); + free_irq(priv->bus.ops->get_irq(&priv->bus), priv); priv->bus.ops->set_drv_data(&priv->bus, NULL); iwl_uninit_drv(priv); |