|
|
@@ -645,6 +645,8 @@ struct iwl_trans_ops {
|
|
|
void (*txq_set_shared_mode)(struct iwl_trans *trans, u32 txq_id,
|
|
|
bool shared);
|
|
|
|
|
|
+ dma_addr_t (*get_txq_byte_table)(struct iwl_trans *trans, int txq_id);
|
|
|
+
|
|
|
int (*wait_tx_queue_empty)(struct iwl_trans *trans, u32 txq_bm);
|
|
|
void (*freeze_txq_timer)(struct iwl_trans *trans, unsigned long txqs,
|
|
|
bool freeze);
|
|
|
@@ -1069,6 +1071,15 @@ static inline void iwl_trans_txq_set_shared_mode(struct iwl_trans *trans,
|
|
|
trans->ops->txq_set_shared_mode(trans, queue, shared_mode);
|
|
|
}
|
|
|
|
|
|
+static inline dma_addr_t iwl_trans_get_txq_byte_table(struct iwl_trans *trans,
|
|
|
+ int queue)
|
|
|
+{
|
|
|
+ /* we should never be called if the trans doesn't support it */
|
|
|
+ BUG_ON(!trans->ops->get_txq_byte_table);
|
|
|
+
|
|
|
+ return trans->ops->get_txq_byte_table(trans, queue);
|
|
|
+}
|
|
|
+
|
|
|
static inline void iwl_trans_txq_enable(struct iwl_trans *trans, int queue,
|
|
|
int fifo, int sta_id, int tid,
|
|
|
int frame_limit, u16 ssn,
|