aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-trans.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2012-04-12 09:24:30 -0400
committerWey-Yi Guy <wey-yi.w.guy@intel.com>2012-04-23 17:30:29 -0400
commitd1ff52536a0d1bd516a628ef43dfaf6fe9c90fe2 (patch)
treebb50fc848b14272b472e9db65b2a793e93069914 /drivers/net/wireless/iwlwifi/iwl-trans.h
parent0db19cde17ece4695cec503f9f6f0a1d4621dac7 (diff)
iwlwifi: use direct calls for transport free
Since the transport allocates and frees itself in the transport specific code, there's no need for virtual functions for it. Remove the free method and call the correct functions directly. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-trans.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-trans.h23
1 files changed, 1 insertions, 22 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans.h b/drivers/net/wireless/iwlwifi/iwl-trans.h
index ba3c09d5472e..7018d313a4e0 100644
--- a/drivers/net/wireless/iwlwifi/iwl-trans.h
+++ b/drivers/net/wireless/iwlwifi/iwl-trans.h
@@ -354,10 +354,6 @@ struct iwl_trans;
354 * May sleep 354 * May sleep
355 * @tx_agg_disable: de-configure a Tx queue to send AMPDUs 355 * @tx_agg_disable: de-configure a Tx queue to send AMPDUs
356 * Must be atomic 356 * Must be atomic
357 * @free: release all the ressource for the transport layer itself such as
358 * irq, tasklet etc... From this point on, the device may not issue
359 * any interrupt (incl. RFKILL).
360 * May sleep
361 * @wait_tx_queue_empty: wait until all tx queues are empty 357 * @wait_tx_queue_empty: wait until all tx queues are empty
362 * May sleep 358 * May sleep
363 * @dbgfs_register: add the dbgfs files under this directory. Files will be 359 * @dbgfs_register: add the dbgfs files under this directory. Files will be
@@ -393,8 +389,6 @@ struct iwl_trans_ops {
393 int sta_id, int tid, int frame_limit, u16 ssn); 389 int sta_id, int tid, int frame_limit, u16 ssn);
394 void (*tx_agg_disable)(struct iwl_trans *trans, int queue); 390 void (*tx_agg_disable)(struct iwl_trans *trans, int queue);
395 391
396 void (*free)(struct iwl_trans *trans);
397
398 int (*dbgfs_register)(struct iwl_trans *trans, struct dentry* dir); 392 int (*dbgfs_register)(struct iwl_trans *trans, struct dentry* dir);
399 int (*wait_tx_queue_empty)(struct iwl_trans *trans); 393 int (*wait_tx_queue_empty)(struct iwl_trans *trans);
400#ifdef CONFIG_PM_SLEEP 394#ifdef CONFIG_PM_SLEEP
@@ -564,11 +558,6 @@ static inline void iwl_trans_tx_agg_setup(struct iwl_trans *trans, int queue,
564 frame_limit, ssn); 558 frame_limit, ssn);
565} 559}
566 560
567static inline void iwl_trans_free(struct iwl_trans *trans)
568{
569 trans->ops->free(trans);
570}
571
572static inline int iwl_trans_wait_tx_queue_empty(struct iwl_trans *trans) 561static inline int iwl_trans_wait_tx_queue_empty(struct iwl_trans *trans)
573{ 562{
574 WARN_ONCE(trans->state != IWL_TRANS_FW_ALIVE, 563 WARN_ONCE(trans->state != IWL_TRANS_FW_ALIVE,
@@ -616,19 +605,9 @@ static inline void iwl_trans_set_pmi(struct iwl_trans *trans, bool state)
616} 605}
617 606
618/***************************************************** 607/*****************************************************
619* Transport layers implementations + their allocation function 608* driver (transport) register/unregister functions
620******************************************************/ 609******************************************************/
621struct pci_dev;
622struct pci_device_id;
623extern const struct iwl_trans_ops trans_ops_pcie;
624struct iwl_trans *iwl_trans_pcie_alloc(struct pci_dev *pdev,
625 const struct pci_device_id *ent,
626 const struct iwl_cfg *cfg);
627int __must_check iwl_pci_register_driver(void); 610int __must_check iwl_pci_register_driver(void);
628void iwl_pci_unregister_driver(void); 611void iwl_pci_unregister_driver(void);
629 612
630extern const struct iwl_trans_ops trans_ops_idi;
631struct iwl_trans *iwl_trans_idi_alloc(void *pdev_void,
632 const void *ent_void,
633 const struct iwl_cfg *cfg);
634#endif /* __iwl_trans_h__ */ 613#endif /* __iwl_trans_h__ */