Lines Matching refs:rx_queue
270 int efx_mcdi_rx_probe(struct efx_rx_queue *rx_queue)
272 return efx_nic_alloc_buffer(rx_queue->efx, &rx_queue->rxd,
273 (rx_queue->ptr_mask + 1) *
278 void efx_mcdi_rx_init(struct efx_rx_queue *rx_queue)
280 struct efx_channel *channel = efx_rx_queue_channel(rx_queue);
281 size_t entries = rx_queue->rxd.len / EFX_BUF_SIZE;
283 struct efx_nic *efx = rx_queue->efx;
290 rx_queue->scatter_n = 0;
291 rx_queue->scatter_len = 0;
297 MCDI_SET_DWORD(inbuf, INIT_RXQ_IN_SIZE, rx_queue->ptr_mask + 1);
299 MCDI_SET_DWORD(inbuf, INIT_RXQ_IN_LABEL, efx_rx_queue_index(rx_queue));
301 efx_rx_queue_index(rx_queue));
309 dma_addr = rx_queue->rxd.dma_addr;
312 efx_rx_queue_index(rx_queue), entries, (u64)dma_addr);
323 efx_rx_queue_index(rx_queue));
326 void efx_mcdi_rx_remove(struct efx_rx_queue *rx_queue)
328 efx_nic_free_buffer(rx_queue->efx, &rx_queue->rxd);
331 void efx_mcdi_rx_fini(struct efx_rx_queue *rx_queue)
335 struct efx_nic *efx = rx_queue->efx;
340 efx_rx_queue_index(rx_queue));
358 struct efx_rx_queue *rx_queue;
373 efx_for_each_channel_rx_queue(rx_queue, channel)
374 efx_mcdi_rx_fini(rx_queue);