diff options
author | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2011-08-25 23:10:53 -0700 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-08-29 15:25:33 -0400 |
commit | 0c325769a394559941acda83e888a1d9b1ef8b7f (patch) | |
tree | 6c64e9a7f14f5d8c9d6d0df095aa2747caddc0b8 /drivers/net/wireless/iwlwifi/iwl-trans.h | |
parent | 57210f7c9f04a2509ee54a0f454003a714db96dd (diff) |
iwlagn: move ISR related data to transport layer
Since the ISR is entirely in the transport layer, its data should be in the pcie
specific region.
Change sync_irq to first disable and then synchronize the IRQ.
iwl_isr and iwl_isr_ict now receive iwl_trans.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-trans.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-trans.h | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans.h b/drivers/net/wireless/iwlwifi/iwl-trans.h index c12763c1a3a..b4c7166a70e 100644 --- a/drivers/net/wireless/iwlwifi/iwl-trans.h +++ b/drivers/net/wireless/iwlwifi/iwl-trans.h @@ -94,10 +94,9 @@ struct iwl_shared; * ready and a successful ADDBA response has been received. * @txq_agg_disable: de-configure a Tx queue to send AMPDUs * @kick_nic: remove the RESET from the embedded CPU and let it run - * @sync_irq: the upper layer will typically disable interrupt and call this - * handler. After this handler returns, it is guaranteed that all - * the ISR / tasklet etc... have finished running and the transport - * layer shall not pass any Rx. + * @disable_sync_irq: Disable and sync: after this handler returns, it is + * guaranteed that all the ISR / tasklet etc... have finished running + * and the transport layer shall not pass any Rx. * @free: release all the ressource for the transport layer itself such as * irq, tasklet etc... * @dbgfs_register: add the dbgfs files under this directory. Files will be @@ -132,7 +131,7 @@ struct iwl_trans_ops { void (*kick_nic)(struct iwl_priv *priv); - void (*sync_irq)(struct iwl_priv *priv); + void (*disable_sync_irq)(struct iwl_trans *trans); void (*free)(struct iwl_priv *priv); int (*dbgfs_register)(struct iwl_trans *trans, struct dentry* dir); @@ -232,9 +231,9 @@ static inline void iwl_trans_kick_nic(struct iwl_trans *trans) trans->ops->kick_nic(priv(trans)); } -static inline void iwl_trans_sync_irq(struct iwl_trans *trans) +static inline void iwl_trans_disable_sync_irq(struct iwl_trans *trans) { - trans->ops->sync_irq(priv(trans)); + trans->ops->disable_sync_irq(trans); } static inline void iwl_trans_free(struct iwl_trans *trans) |