diff options
author | Tomas Winkler <tomas.winkler@intel.com> | 2008-05-29 04:35:00 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-06-03 15:00:21 -0400 |
commit | da1bc4539f9b10dc30ac1750fbaaf5afae4b3446 (patch) | |
tree | 697cbfd1f1eb6ce8117e86612988abb4ea861b97 /drivers/net/wireless/iwlwifi/iwl-5000.c | |
parent | 46315e012236af887cf442fd494a91b1d36858b9 (diff) |
iwlwifi: move txq_ctx_stop into iwl-tx.c
This patch moves txq_ctx_stop into iwl-tx.c iwlcore module.
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-5000.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-5000.c | 32 |
1 files changed, 10 insertions, 22 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless/iwlwifi/iwl-5000.c index d6074522c446..a94cd362fef5 100644 --- a/drivers/net/wireless/iwlwifi/iwl-5000.c +++ b/drivers/net/wireless/iwlwifi/iwl-5000.c | |||
@@ -662,10 +662,10 @@ static int iwl5000_alive_notify(struct iwl_priv *priv) | |||
662 | } | 662 | } |
663 | 663 | ||
664 | iwl_write_prph(priv, IWL50_SCD_INTERRUPT_MASK, | 664 | iwl_write_prph(priv, IWL50_SCD_INTERRUPT_MASK, |
665 | (1 << priv->hw_params.max_txq_num) - 1); | 665 | IWL_MASK(0, priv->hw_params.max_txq_num)); |
666 | 666 | ||
667 | iwl_write_prph(priv, IWL50_SCD_TXFACT, | 667 | /* Activate all Tx DMA/FIFO channels */ |
668 | SCD_TXFACT_REG_TXFIFO_MASK(0, 7)); | 668 | priv->cfg->ops->lib->txq_set_sched(priv, IWL_MASK(0, 7)); |
669 | 669 | ||
670 | iwl5000_set_wr_ptrs(priv, IWL_CMD_QUEUE_NUM, 0); | 670 | iwl5000_set_wr_ptrs(priv, IWL_CMD_QUEUE_NUM, 0); |
671 | /* map qos queues to fifos one-to-one */ | 671 | /* map qos queues to fifos one-to-one */ |
@@ -839,25 +839,13 @@ static u16 iwl5000_build_addsta_hcmd(const struct iwl_addsta_cmd *cmd, u8 *data) | |||
839 | } | 839 | } |
840 | 840 | ||
841 | 841 | ||
842 | static int iwl5000_disable_tx_fifo(struct iwl_priv *priv) | 842 | /* |
843 | * Activate/Deactivat Tx DMA/FIFO channels according tx fifos mask | ||
844 | * must be called under priv->lock and mac access | ||
845 | */ | ||
846 | static void iwl5000_txq_set_sched(struct iwl_priv *priv, u32 mask) | ||
843 | { | 847 | { |
844 | unsigned long flags; | 848 | iwl_write_prph(priv, IWL50_SCD_TXFACT, mask); |
845 | int ret; | ||
846 | |||
847 | spin_lock_irqsave(&priv->lock, flags); | ||
848 | |||
849 | ret = iwl_grab_nic_access(priv); | ||
850 | if (unlikely(ret)) { | ||
851 | IWL_ERROR("Tx fifo reset failed"); | ||
852 | spin_unlock_irqrestore(&priv->lock, flags); | ||
853 | return ret; | ||
854 | } | ||
855 | |||
856 | iwl_write_prph(priv, IWL50_SCD_TXFACT, 0); | ||
857 | iwl_release_nic_access(priv); | ||
858 | spin_unlock_irqrestore(&priv->lock, flags); | ||
859 | |||
860 | return 0; | ||
861 | } | 849 | } |
862 | 850 | ||
863 | /* Currently 5000 is the supperset of everything */ | 851 | /* Currently 5000 is the supperset of everything */ |
@@ -894,7 +882,7 @@ static struct iwl_lib_ops iwl5000_lib = { | |||
894 | .free_shared_mem = iwl5000_free_shared_mem, | 882 | .free_shared_mem = iwl5000_free_shared_mem, |
895 | .shared_mem_rx_idx = iwl5000_shared_mem_rx_idx, | 883 | .shared_mem_rx_idx = iwl5000_shared_mem_rx_idx, |
896 | .txq_update_byte_cnt_tbl = iwl5000_txq_update_byte_cnt_tbl, | 884 | .txq_update_byte_cnt_tbl = iwl5000_txq_update_byte_cnt_tbl, |
897 | .disable_tx_fifo = iwl5000_disable_tx_fifo, | 885 | .txq_set_sched = iwl5000_txq_set_sched, |
898 | .rx_handler_setup = iwl5000_rx_handler_setup, | 886 | .rx_handler_setup = iwl5000_rx_handler_setup, |
899 | .is_valid_rtc_data_addr = iwl5000_hw_valid_rtc_data_addr, | 887 | .is_valid_rtc_data_addr = iwl5000_hw_valid_rtc_data_addr, |
900 | .load_ucode = iwl5000_load_ucode, | 888 | .load_ucode = iwl5000_load_ucode, |