/Linux-v5.15/drivers/net/ethernet/sfc/ |
D | tx_common.c | 16 static unsigned int efx_tx_cb_page_count(struct efx_tx_queue *tx_queue) in efx_tx_cb_page_count() argument 18 return DIV_ROUND_UP(tx_queue->ptr_mask + 1, in efx_tx_cb_page_count() 22 int efx_probe_tx_queue(struct efx_tx_queue *tx_queue) in efx_probe_tx_queue() argument 24 struct efx_nic *efx = tx_queue->efx; in efx_probe_tx_queue() 31 tx_queue->ptr_mask = entries - 1; in efx_probe_tx_queue() 35 tx_queue->queue, efx->txq_entries, tx_queue->ptr_mask); in efx_probe_tx_queue() 38 tx_queue->buffer = kcalloc(entries, sizeof(*tx_queue->buffer), in efx_probe_tx_queue() 40 if (!tx_queue->buffer) in efx_probe_tx_queue() 43 tx_queue->cb_page = kcalloc(efx_tx_cb_page_count(tx_queue), in efx_probe_tx_queue() 44 sizeof(tx_queue->cb_page[0]), GFP_KERNEL); in efx_probe_tx_queue() [all …]
|
D | ef100_tx.c | 23 int ef100_tx_probe(struct efx_tx_queue *tx_queue) in ef100_tx_probe() argument 26 return efx_nic_alloc_buffer(tx_queue->efx, &tx_queue->txd.buf, in ef100_tx_probe() 27 (tx_queue->ptr_mask + 2) * in ef100_tx_probe() 32 void ef100_tx_init(struct efx_tx_queue *tx_queue) in ef100_tx_init() argument 35 tx_queue->core_txq = in ef100_tx_init() 36 netdev_get_tx_queue(tx_queue->efx->net_dev, in ef100_tx_init() 37 tx_queue->channel->channel - in ef100_tx_init() 38 tx_queue->efx->tx_channel_offset); in ef100_tx_init() 46 tx_queue->tso_version = 3; in ef100_tx_init() 47 if (efx_mcdi_tx_init(tx_queue)) in ef100_tx_init() [all …]
|
D | tx.c | 34 static inline u8 *efx_tx_get_copy_buffer(struct efx_tx_queue *tx_queue, in efx_tx_get_copy_buffer() argument 37 unsigned int index = efx_tx_queue_get_insert_index(tx_queue); in efx_tx_get_copy_buffer() 39 &tx_queue->cb_page[index >> (PAGE_SHIFT - EFX_TX_CB_ORDER)]; in efx_tx_get_copy_buffer() 44 efx_nic_alloc_buffer(tx_queue->efx, page_buf, PAGE_SIZE, in efx_tx_get_copy_buffer() 52 u8 *efx_tx_get_copy_buffer_limited(struct efx_tx_queue *tx_queue, in efx_tx_get_copy_buffer_limited() argument 57 return efx_tx_get_copy_buffer(tx_queue, buffer); in efx_tx_get_copy_buffer_limited() 99 static int efx_enqueue_skb_copy(struct efx_tx_queue *tx_queue, in efx_enqueue_skb_copy() argument 109 buffer = efx_tx_queue_get_insert_buffer(tx_queue); in efx_enqueue_skb_copy() 111 copy_buffer = efx_tx_get_copy_buffer(tx_queue, buffer); in efx_enqueue_skb_copy() 122 ++tx_queue->insert_count; in efx_enqueue_skb_copy() [all …]
|
D | nic_common.h | 60 efx_tx_desc(struct efx_tx_queue *tx_queue, unsigned int index) in efx_tx_desc() argument 62 return ((efx_qword_t *) (tx_queue->txd.buf.addr)) + index; in efx_tx_desc() 68 static inline bool efx_nic_tx_is_empty(struct efx_tx_queue *tx_queue, unsigned int write_count) in efx_nic_tx_is_empty() argument 70 unsigned int empty_read_count = READ_ONCE(tx_queue->empty_read_count); in efx_nic_tx_is_empty() 78 int efx_enqueue_skb_tso(struct efx_tx_queue *tx_queue, struct sk_buff *skb, 89 static inline bool efx_nic_may_push_tx_desc(struct efx_tx_queue *tx_queue, in efx_nic_may_push_tx_desc() argument 92 bool was_empty = efx_nic_tx_is_empty(tx_queue, write_count); in efx_nic_may_push_tx_desc() 94 tx_queue->empty_read_count = 0; in efx_nic_may_push_tx_desc() 95 return was_empty && tx_queue->write_count - write_count == 1; in efx_nic_may_push_tx_desc() 121 static inline int efx_nic_probe_tx(struct efx_tx_queue *tx_queue) in efx_nic_probe_tx() argument [all …]
|
D | tx_common.h | 14 int efx_probe_tx_queue(struct efx_tx_queue *tx_queue); 15 void efx_init_tx_queue(struct efx_tx_queue *tx_queue); 16 void efx_fini_tx_queue(struct efx_tx_queue *tx_queue); 17 void efx_remove_tx_queue(struct efx_tx_queue *tx_queue); 19 void efx_dequeue_buffer(struct efx_tx_queue *tx_queue, 29 void efx_xmit_done_check_empty(struct efx_tx_queue *tx_queue); 30 void efx_xmit_done(struct efx_tx_queue *tx_queue, unsigned int index); 32 void efx_enqueue_unwind(struct efx_tx_queue *tx_queue, 35 struct efx_tx_buffer *efx_tx_map_chunk(struct efx_tx_queue *tx_queue, 38 int efx_tx_map_data(struct efx_tx_queue *tx_queue, struct sk_buff *skb, [all …]
|
D | tx_tso.c | 79 static inline void prefetch_ptr(struct efx_tx_queue *tx_queue) in prefetch_ptr() argument 81 unsigned int insert_ptr = efx_tx_queue_get_insert_index(tx_queue); in prefetch_ptr() 84 ptr = (char *) (tx_queue->buffer + insert_ptr); in prefetch_ptr() 88 ptr = (char *) (((efx_qword_t *)tx_queue->txd.buf.addr) + insert_ptr); in prefetch_ptr() 102 static void efx_tx_queue_insert(struct efx_tx_queue *tx_queue, in efx_tx_queue_insert() argument 112 buffer = efx_tx_queue_get_insert_buffer(tx_queue); in efx_tx_queue_insert() 113 ++tx_queue->insert_count; in efx_tx_queue_insert() 115 EFX_WARN_ON_ONCE_PARANOID(tx_queue->insert_count - in efx_tx_queue_insert() 116 tx_queue->read_count >= in efx_tx_queue_insert() 117 tx_queue->efx->txq_entries); in efx_tx_queue_insert() [all …]
|
D | efx_channels.c | 532 struct efx_tx_queue *tx_queue; in efx_alloc_channel() local 545 tx_queue = &channel->tx_queue[j]; in efx_alloc_channel() 546 tx_queue->efx = efx; in efx_alloc_channel() 547 tx_queue->queue = -1; in efx_alloc_channel() 548 tx_queue->label = j; in efx_alloc_channel() 549 tx_queue->channel = channel; in efx_alloc_channel() 602 struct efx_tx_queue *tx_queue; in efx_copy_channel() local 619 tx_queue = &channel->tx_queue[j]; in efx_copy_channel() 620 if (tx_queue->channel) in efx_copy_channel() 621 tx_queue->channel = channel; in efx_copy_channel() [all …]
|
D | mcdi_functions.c | 163 int efx_mcdi_tx_init(struct efx_tx_queue *tx_queue) in efx_mcdi_tx_init() argument 167 bool csum_offload = tx_queue->type & EFX_TXQ_TYPE_OUTER_CSUM; in efx_mcdi_tx_init() 168 bool inner_csum = tx_queue->type & EFX_TXQ_TYPE_INNER_CSUM; in efx_mcdi_tx_init() 169 size_t entries = tx_queue->txd.buf.len / EFX_BUF_SIZE; in efx_mcdi_tx_init() 170 struct efx_channel *channel = tx_queue->channel; in efx_mcdi_tx_init() 171 struct efx_nic *efx = tx_queue->efx; in efx_mcdi_tx_init() 178 MCDI_SET_DWORD(inbuf, INIT_TXQ_IN_SIZE, tx_queue->ptr_mask + 1); in efx_mcdi_tx_init() 180 MCDI_SET_DWORD(inbuf, INIT_TXQ_IN_LABEL, tx_queue->label); in efx_mcdi_tx_init() 181 MCDI_SET_DWORD(inbuf, INIT_TXQ_IN_INSTANCE, tx_queue->queue); in efx_mcdi_tx_init() 185 dma_addr = tx_queue->txd.buf.dma_addr; in efx_mcdi_tx_init() [all …]
|
D | farch.c | 282 static inline void efx_farch_notify_tx_desc(struct efx_tx_queue *tx_queue) in efx_farch_notify_tx_desc() argument 287 write_ptr = tx_queue->write_count & tx_queue->ptr_mask; in efx_farch_notify_tx_desc() 289 efx_writed_page(tx_queue->efx, ®, in efx_farch_notify_tx_desc() 290 FR_AZ_TX_DESC_UPD_DWORD_P0, tx_queue->queue); in efx_farch_notify_tx_desc() 294 static inline void efx_farch_push_tx_desc(struct efx_tx_queue *tx_queue, in efx_farch_push_tx_desc() argument 303 write_ptr = tx_queue->write_count & tx_queue->ptr_mask; in efx_farch_push_tx_desc() 307 efx_writeo_page(tx_queue->efx, ®, in efx_farch_push_tx_desc() 308 FR_BZ_TX_DESC_UPD_P0, tx_queue->queue); in efx_farch_push_tx_desc() 316 void efx_farch_tx_write(struct efx_tx_queue *tx_queue) in efx_farch_tx_write() argument 321 unsigned old_write_count = tx_queue->write_count; in efx_farch_tx_write() [all …]
|
D | ef100_tx.h | 17 int ef100_tx_probe(struct efx_tx_queue *tx_queue); 18 void ef100_tx_init(struct efx_tx_queue *tx_queue); 19 void ef100_tx_write(struct efx_tx_queue *tx_queue); 24 netdev_tx_t ef100_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb);
|
D | net_driver.h | 549 struct efx_tx_queue tx_queue[EFX_MAX_TXQ_PER_CHANNEL]; member 1364 int (*tx_probe)(struct efx_tx_queue *tx_queue); 1365 void (*tx_init)(struct efx_tx_queue *tx_queue); 1366 void (*tx_remove)(struct efx_tx_queue *tx_queue); 1367 void (*tx_write)(struct efx_tx_queue *tx_queue); 1368 netdev_tx_t (*tx_enqueue)(struct efx_tx_queue *tx_queue, struct sk_buff *skb); 1369 unsigned int (*tx_limit_len)(struct efx_tx_queue *tx_queue, 1566 for (_tx_queue = (_channel)->tx_queue; \ 1567 _tx_queue < (_channel)->tx_queue + \ 1655 struct efx_tx_queue *tx_queue; in efx_channel_tx_fill_level() local [all …]
|
D | selftest.c | 408 static int efx_begin_loopback(struct efx_tx_queue *tx_queue) in efx_begin_loopback() argument 410 struct efx_nic *efx = tx_queue->efx; in efx_begin_loopback() 438 rc = efx_enqueue_skb(tx_queue, skb); in efx_begin_loopback() 444 "%d in %s loopback test\n", tx_queue->label, in efx_begin_loopback() 464 static int efx_end_loopback(struct efx_tx_queue *tx_queue, in efx_end_loopback() argument 467 struct efx_nic *efx = tx_queue->efx; in efx_end_loopback() 496 tx_queue->label, tx_done, state->packet_count, in efx_end_loopback() 507 tx_queue->label, rx_good, state->packet_count, in efx_end_loopback() 514 lb_tests->tx_sent[tx_queue->label] += state->packet_count; in efx_end_loopback() 515 lb_tests->tx_done[tx_queue->label] += tx_done; in efx_end_loopback() [all …]
|
D | ef10.c | 779 struct efx_tx_queue *tx_queue; in efx_ef10_link_piobufs() local 816 efx_for_each_channel_tx_queue(tx_queue, channel) { in efx_ef10_link_piobufs() 822 tx_queue->channel->channel - 1) * in efx_ef10_link_piobufs() 832 if (tx_queue->queue == nic_data->pio_write_vi_base) { in efx_ef10_link_piobufs() 841 tx_queue->queue); in efx_ef10_link_piobufs() 853 tx_queue->queue, index, rc); in efx_ef10_link_piobufs() 854 tx_queue->piobuf = NULL; in efx_ef10_link_piobufs() 856 tx_queue->piobuf = in efx_ef10_link_piobufs() 859 tx_queue->piobuf_offset = offset; in efx_ef10_link_piobufs() 862 tx_queue->queue, index, in efx_ef10_link_piobufs() [all …]
|
D | efx.h | 21 void efx_init_tx_queue_core_txq(struct efx_tx_queue *tx_queue); 24 netdev_tx_t __efx_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb); 25 static inline netdev_tx_t efx_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb) in efx_enqueue_skb() argument 27 return INDIRECT_CALL_2(tx_queue->efx->type->tx_enqueue, in efx_enqueue_skb() 29 tx_queue, skb); in efx_enqueue_skb() 31 void efx_xmit_done(struct efx_tx_queue *tx_queue, unsigned int index); 32 void efx_xmit_done_single(struct efx_tx_queue *tx_queue);
|
/Linux-v5.15/drivers/net/ethernet/sfc/falcon/ |
D | tx.c | 25 static inline u8 *ef4_tx_get_copy_buffer(struct ef4_tx_queue *tx_queue, in ef4_tx_get_copy_buffer() argument 28 unsigned int index = ef4_tx_queue_get_insert_index(tx_queue); in ef4_tx_get_copy_buffer() 30 &tx_queue->cb_page[index >> (PAGE_SHIFT - EF4_TX_CB_ORDER)]; in ef4_tx_get_copy_buffer() 35 ef4_nic_alloc_buffer(tx_queue->efx, page_buf, PAGE_SIZE, in ef4_tx_get_copy_buffer() 43 u8 *ef4_tx_get_copy_buffer_limited(struct ef4_tx_queue *tx_queue, in ef4_tx_get_copy_buffer_limited() argument 48 return ef4_tx_get_copy_buffer(tx_queue, buffer); in ef4_tx_get_copy_buffer_limited() 51 static void ef4_dequeue_buffer(struct ef4_tx_queue *tx_queue, in ef4_dequeue_buffer() argument 57 struct device *dma_dev = &tx_queue->efx->pci_dev->dev; in ef4_dequeue_buffer() 72 netif_vdbg(tx_queue->efx, tx_done, tx_queue->efx->net_dev, in ef4_dequeue_buffer() 74 tx_queue->queue, tx_queue->read_count); in ef4_dequeue_buffer() [all …]
|
D | nic.h | 63 ef4_tx_desc(struct ef4_tx_queue *tx_queue, unsigned int index) in ef4_tx_desc() argument 65 return ((ef4_qword_t *) (tx_queue->txd.buf.addr)) + index; in ef4_tx_desc() 69 static inline struct ef4_tx_queue *ef4_tx_queue_partner(struct ef4_tx_queue *tx_queue) in ef4_tx_queue_partner() argument 71 if (tx_queue->queue & EF4_TXQ_TYPE_OFFLOAD) in ef4_tx_queue_partner() 72 return tx_queue - EF4_TXQ_TYPE_OFFLOAD; in ef4_tx_queue_partner() 74 return tx_queue + EF4_TXQ_TYPE_OFFLOAD; in ef4_tx_queue_partner() 80 static inline bool __ef4_nic_tx_is_empty(struct ef4_tx_queue *tx_queue, in __ef4_nic_tx_is_empty() argument 83 unsigned int empty_read_count = READ_ONCE(tx_queue->empty_read_count); in __ef4_nic_tx_is_empty() 99 static inline bool ef4_nic_may_push_tx_desc(struct ef4_tx_queue *tx_queue, in ef4_nic_may_push_tx_desc() argument 102 bool was_empty = __ef4_nic_tx_is_empty(tx_queue, write_count); in ef4_nic_may_push_tx_desc() [all …]
|
D | farch.c | 272 static inline void ef4_farch_notify_tx_desc(struct ef4_tx_queue *tx_queue) in ef4_farch_notify_tx_desc() argument 277 write_ptr = tx_queue->write_count & tx_queue->ptr_mask; in ef4_farch_notify_tx_desc() 279 ef4_writed_page(tx_queue->efx, ®, in ef4_farch_notify_tx_desc() 280 FR_AZ_TX_DESC_UPD_DWORD_P0, tx_queue->queue); in ef4_farch_notify_tx_desc() 284 static inline void ef4_farch_push_tx_desc(struct ef4_tx_queue *tx_queue, in ef4_farch_push_tx_desc() argument 293 write_ptr = tx_queue->write_count & tx_queue->ptr_mask; in ef4_farch_push_tx_desc() 297 ef4_writeo_page(tx_queue->efx, ®, in ef4_farch_push_tx_desc() 298 FR_BZ_TX_DESC_UPD_P0, tx_queue->queue); in ef4_farch_push_tx_desc() 306 void ef4_farch_tx_write(struct ef4_tx_queue *tx_queue) in ef4_farch_tx_write() argument 311 unsigned old_write_count = tx_queue->write_count; in ef4_farch_tx_write() [all …]
|
D | net_driver.h | 445 struct ef4_tx_queue tx_queue[EF4_TXQ_TYPES]; member 1082 int (*tx_probe)(struct ef4_tx_queue *tx_queue); 1083 void (*tx_init)(struct ef4_tx_queue *tx_queue); 1084 void (*tx_remove)(struct ef4_tx_queue *tx_queue); 1085 void (*tx_write)(struct ef4_tx_queue *tx_queue); 1086 unsigned int (*tx_limit_len)(struct ef4_tx_queue *tx_queue, 1192 return &efx->channel[efx->tx_channel_offset + index]->tx_queue[type]; in ef4_get_tx_queue() 1206 return &channel->tx_queue[type]; in ef4_channel_get_tx_queue() 1209 static inline bool ef4_tx_queue_used(struct ef4_tx_queue *tx_queue) in ef4_tx_queue_used() argument 1211 return !(tx_queue->efx->net_dev->num_tc < 2 && in ef4_tx_queue_used() [all …]
|
D | selftest.c | 410 static int ef4_begin_loopback(struct ef4_tx_queue *tx_queue) in ef4_begin_loopback() argument 412 struct ef4_nic *efx = tx_queue->efx; in ef4_begin_loopback() 440 rc = ef4_enqueue_skb(tx_queue, skb); in ef4_begin_loopback() 446 "%d in %s loopback test\n", tx_queue->queue, in ef4_begin_loopback() 466 static int ef4_end_loopback(struct ef4_tx_queue *tx_queue, in ef4_end_loopback() argument 469 struct ef4_nic *efx = tx_queue->efx; in ef4_end_loopback() 498 tx_queue->queue, tx_done, state->packet_count, in ef4_end_loopback() 509 tx_queue->queue, rx_good, state->packet_count, in ef4_end_loopback() 516 lb_tests->tx_sent[tx_queue->queue] += state->packet_count; in ef4_end_loopback() 517 lb_tests->tx_done[tx_queue->queue] += tx_done; in ef4_end_loopback() [all …]
|
D | tx.h | 15 unsigned int ef4_tx_limit_len(struct ef4_tx_queue *tx_queue, 18 u8 *ef4_tx_get_copy_buffer_limited(struct ef4_tx_queue *tx_queue, 21 int ef4_enqueue_skb_tso(struct ef4_tx_queue *tx_queue, struct sk_buff *skb,
|
D | efx.h | 23 int ef4_probe_tx_queue(struct ef4_tx_queue *tx_queue); 24 void ef4_remove_tx_queue(struct ef4_tx_queue *tx_queue); 25 void ef4_init_tx_queue(struct ef4_tx_queue *tx_queue); 26 void ef4_init_tx_queue_core_txq(struct ef4_tx_queue *tx_queue); 27 void ef4_fini_tx_queue(struct ef4_tx_queue *tx_queue); 30 netdev_tx_t ef4_enqueue_skb(struct ef4_tx_queue *tx_queue, struct sk_buff *skb); 31 void ef4_xmit_done(struct ef4_tx_queue *tx_queue, unsigned int index);
|
/Linux-v5.15/drivers/net/ethernet/freescale/ |
D | gianfar.c | 133 gfar_write(baddr, priv->tx_queue[i]->tx_bd_dma_base); in gfar_init_tx_rx_base() 248 if (likely(priv->tx_queue[i]->txcoalescing)) in gfar_configure_coalescing() 249 gfar_write(baddr + i, priv->tx_queue[i]->txic); in gfar_configure_coalescing() 263 if (likely(priv->tx_queue[0]->txcoalescing)) in gfar_configure_coalescing() 264 gfar_write(®s->txic, priv->tx_queue[0]->txic); in gfar_configure_coalescing() 289 stats->tx_bytes += priv->tx_queue[i]->stats.tx_bytes; in gfar_get_stats64() 290 stats->tx_packets += priv->tx_queue[i]->stats.tx_packets; in gfar_get_stats64() 415 priv->tx_queue[i] = kzalloc(sizeof(struct gfar_priv_tx_q), in gfar_alloc_tx_queues() 417 if (!priv->tx_queue[i]) in gfar_alloc_tx_queues() 420 priv->tx_queue[i]->tx_skbuff = NULL; in gfar_alloc_tx_queues() [all …]
|
/Linux-v5.15/drivers/staging/wfx/ |
D | queue.c | 70 skb_queue_head_init(&wvif->tx_queue[i].normal); in wfx_tx_queues_init() 71 skb_queue_head_init(&wvif->tx_queue[i].cab); in wfx_tx_queues_init() 72 wvif->tx_queue[i].priority = priorities[i]; in wfx_tx_queues_init() 81 WARN_ON(atomic_read(&wvif->tx_queue[i].pending_frames)); in wfx_tx_queues_check_empty() 82 WARN_ON(!skb_queue_empty_lockless(&wvif->tx_queue[i].normal)); in wfx_tx_queues_check_empty() 83 WARN_ON(!skb_queue_empty_lockless(&wvif->tx_queue[i].cab)); in wfx_tx_queues_check_empty() 116 struct wfx_queue *queue = &wvif->tx_queue[skb_get_queue_mapping(skb)]; in wfx_tx_queues_put() 138 queue = &wvif->tx_queue[skb_get_queue_mapping(skb)]; in wfx_pending_drop() 164 queue = &wvif->tx_queue[skb_get_queue_mapping(skb)]; in wfx_pending_get() 222 if (!skb_queue_empty_lockless(&wvif->tx_queue[i].cab)) in wfx_tx_queues_has_cab() [all …]
|
/Linux-v5.15/drivers/net/wireless/rsi/ |
D | rsi_91x_core.c | 36 q_len = skb_queue_len(&common->tx_queue[ii]); in rsi_determine_min_weight_queue() 60 q_len = skb_queue_len(&common->tx_queue[ii]); in rsi_recalculate_weights() 106 if (skb_queue_len(&common->tx_queue[q_num])) in rsi_get_num_pkts_dequeue() 107 skb = skb_peek(&common->tx_queue[q_num]); in rsi_get_num_pkts_dequeue() 121 if (skb_queue_len(&common->tx_queue[q_num]) - pkt_cnt) in rsi_get_num_pkts_dequeue() 145 if (skb_queue_len(&common->tx_queue[MGMT_BEACON_Q])) { in rsi_core_determine_hal_queue() 149 if (skb_queue_len(&common->tx_queue[MGMT_SOFT_Q])) { in rsi_core_determine_hal_queue() 172 q_len = skb_queue_len(&common->tx_queue[ii]); in rsi_core_determine_hal_queue() 187 q_len = skb_queue_len(&common->tx_queue[q_num]); in rsi_core_determine_hal_queue() 200 q_len = skb_queue_len(&common->tx_queue[q_num]); in rsi_core_determine_hal_queue() [all …]
|
/Linux-v5.15/drivers/net/wireless/ath/ath5k/ |
D | dma.c | 132 u32 tx_queue; in ath5k_hw_start_tx_dma() local 141 tx_queue = ath5k_hw_reg_read(ah, AR5K_CR); in ath5k_hw_start_tx_dma() 148 tx_queue |= AR5K_CR_TXE0 & ~AR5K_CR_TXD0; in ath5k_hw_start_tx_dma() 151 tx_queue |= AR5K_CR_TXE1 & ~AR5K_CR_TXD1; in ath5k_hw_start_tx_dma() 156 tx_queue |= AR5K_CR_TXE1 & ~AR5K_CR_TXD1; in ath5k_hw_start_tx_dma() 164 ath5k_hw_reg_write(ah, tx_queue, AR5K_CR); in ath5k_hw_start_tx_dma() 191 u32 tx_queue, pending; in ath5k_hw_stop_tx_dma() local 200 tx_queue = ath5k_hw_reg_read(ah, AR5K_CR); in ath5k_hw_stop_tx_dma() 207 tx_queue |= AR5K_CR_TXD0 & ~AR5K_CR_TXE0; in ath5k_hw_stop_tx_dma() 212 tx_queue |= AR5K_CR_TXD1 & ~AR5K_CR_TXD1; in ath5k_hw_stop_tx_dma() [all …]
|