]> git.baikalelectronics.ru Git - kernel.git/commitdiff
iwlwifi: pcie: keep trans instead of trans_pcie in iwl_txq
authorMordechay Goodstein <mordechay.goodstein@intel.com>
Fri, 29 May 2020 06:39:23 +0000 (09:39 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Fri, 29 May 2020 07:32:10 +0000 (10:32 +0300)
We used both the trans and the trans_pcie structures in
iwl_txq, so we can keep the trans structure instead.  This
helps with the refactoring of txq code out of pcie.

Signed-off-by: Mordechay Goodstein <mordechay.goodstein@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Link: https://lore.kernel.org/r/iwlwifi.20200529092401.1f826d34339e.I23182a59bfbe089a1f659742d6fee6f64d2ed08c@changeid
drivers/net/wireless/intel/iwlwifi/pcie/internal.h
drivers/net/wireless/intel/iwlwifi/pcie/tx.c

index b76c0396335a63c92ba33783f67b348adef66d64..3950f5784a15439a0082079958896389ef4094ae 100644 (file)
@@ -332,7 +332,7 @@ struct iwl_pcie_first_tb_buf {
  * @entries: transmit entries (driver state)
  * @lock: queue lock
  * @stuck_timer: timer that fires if queue gets stuck
- * @trans_pcie: pointer back to transport (for timer)
+ * @trans: pointer back to transport (for timer)
  * @need_update: indicates need to update read/write index
  * @ampdu: true if this queue is an ampdu queue for an specific RA/TID
  * @wd_timeout: queue watchdog timeout (jiffies) - per queue
@@ -371,7 +371,7 @@ struct iwl_txq {
        spinlock_t lock;
        unsigned long frozen_expiry_remainder;
        struct timer_list stuck_timer;
-       struct iwl_trans_pcie *trans_pcie;
+       struct iwl_trans *trans;
        bool need_update;
        bool frozen;
        bool ampdu;
index 9ff78bca460b2fc95233083f9c9f5078a4528f68..757cf4e9de330e21169d5b6b92efd8afc759800f 100644 (file)
@@ -183,8 +183,7 @@ void iwl_pcie_free_dma_ptr(struct iwl_trans *trans, struct iwl_dma_ptr *ptr)
 static void iwl_pcie_txq_stuck_timer(struct timer_list *t)
 {
        struct iwl_txq *txq = from_timer(txq, t, stuck_timer);
-       struct iwl_trans_pcie *trans_pcie = txq->trans_pcie;
-       struct iwl_trans *trans = iwl_trans_pcie_get_trans(trans_pcie);
+       struct iwl_trans *trans = txq->trans;
 
        spin_lock(&txq->lock);
        /* check if triggered erroneously */
@@ -535,7 +534,7 @@ int iwl_pcie_txq_alloc(struct iwl_trans *trans, struct iwl_txq *txq,
                tfd_sz = trans_pcie->tfd_size * slots_num;
 
        timer_setup(&txq->stuck_timer, iwl_pcie_txq_stuck_timer, 0);
-       txq->trans_pcie = trans_pcie;
+       txq->trans = trans;
 
        txq->n_window = slots_num;
 
@@ -2129,7 +2128,8 @@ static int iwl_fill_data_tbs_amsdu(struct iwl_trans *trans, struct sk_buff *skb,
                                   u16 tb1_len)
 {
        struct iwl_tx_cmd *tx_cmd = (void *)dev_cmd->payload;
-       struct iwl_trans_pcie *trans_pcie = txq->trans_pcie;
+       struct iwl_trans_pcie *trans_pcie =
+               IWL_TRANS_GET_PCIE_TRANS(txq->trans);
        struct ieee80211_hdr *hdr = (void *)skb->data;
        unsigned int snap_ip_tcp_hdrlen, ip_hdrlen, total_len, hdr_room;
        unsigned int mss = skb_shinfo(skb)->gso_size;