]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - drivers/net/wireless/iwlwifi/iwl-core.h
iwlwifi: put all the isr related function under ops
[net-next-2.6.git] / drivers / net / wireless / iwlwifi / iwl-core.h
index 7505c16db2a205e51528c91bcc9d38342e6a416d..c9723da040fc55a89d4b61c7386ec3c777b1c031 100644 (file)
@@ -120,6 +120,14 @@ struct iwl_apm_ops {
        void (*config)(struct iwl_priv *priv);
 };
 
+struct iwl_isr_ops {
+       irqreturn_t (*isr) (int irq, void *data);
+       void (*free)(struct iwl_priv *priv);
+       int (*alloc)(struct iwl_priv *priv);
+       int (*reset)(struct iwl_priv *priv);
+       void (*disable)(struct iwl_priv *priv);
+};
+
 struct iwl_debugfs_ops {
        ssize_t (*rx_stats_read)(struct file *file, char __user *user_buf,
                                 size_t count, loff_t *ppos);
@@ -193,7 +201,9 @@ struct iwl_lib_ops {
        /* power */
        int (*send_tx_power) (struct iwl_priv *priv);
        void (*update_chain_flags)(struct iwl_priv *priv);
-       irqreturn_t (*isr) (int irq, void *data);
+
+       /* isr */
+       struct iwl_isr_ops isr_ops;
 
        /* eeprom operations (as defined in iwl-eeprom.h) */
        struct iwl_eeprom_ops eeprom_ops;