Lines Matching defs:tx_queue
163 int efx_mcdi_tx_init(struct efx_tx_queue *tx_queue)
167 bool csum_offload = tx_queue->type & EFX_TXQ_TYPE_OUTER_CSUM;
168 bool inner_csum = tx_queue->type & EFX_TXQ_TYPE_INNER_CSUM;
169 size_t entries = tx_queue->txd.len / EFX_BUF_SIZE;
170 struct efx_channel *channel = tx_queue->channel;
171 struct efx_nic *efx = tx_queue->efx;
178 MCDI_SET_DWORD(inbuf, INIT_TXQ_IN_SIZE, tx_queue->ptr_mask + 1);
180 MCDI_SET_DWORD(inbuf, INIT_TXQ_IN_LABEL, tx_queue->label);
181 MCDI_SET_DWORD(inbuf, INIT_TXQ_IN_INSTANCE, tx_queue->queue);
185 dma_addr = tx_queue->txd.dma_addr;
188 tx_queue->queue, entries, (u64)dma_addr);
198 bool tso_v2 = tx_queue->tso_version == 2;
214 INIT_TXQ_EXT_IN_FLAG_TIMESTAMP, tx_queue->timestamping,
222 tx_queue->tso_version = 0;
241 void efx_mcdi_tx_remove(struct efx_tx_queue *tx_queue)
243 efx_nic_free_buffer(tx_queue->efx, &tx_queue->txd);
246 void efx_mcdi_tx_fini(struct efx_tx_queue *tx_queue)
250 struct efx_nic *efx = tx_queue->efx;
255 tx_queue->queue);
357 struct efx_tx_queue *tx_queue;
375 efx_for_each_channel_tx_queue(tx_queue, channel)
376 efx_mcdi_tx_fini(tx_queue);