Lines Matching defs:buffer
35 struct efx_tx_buffer *buffer)
47 buffer->dma_addr = page_buf->dma_addr + offset;
48 buffer->unmap_len = 0;
53 struct efx_tx_buffer *buffer, size_t len)
57 return efx_tx_get_copy_buffer(tx_queue, buffer);
103 struct efx_tx_buffer *buffer;
109 buffer = efx_tx_queue_get_insert_buffer(tx_queue);
111 copy_buffer = efx_tx_get_copy_buffer(tx_queue, buffer);
117 buffer->len = copy_len;
119 buffer->skb = skb;
120 buffer->flags = EFX_TX_BUF_SKB;
134 * Advances piobuf pointer. Leaves additional data in the copy buffer.
155 /* Copy to PIO, respecting dword alignment, popping data from copy buffer first.
156 * Advances piobuf pointer. Leaves additional data in the copy buffer.
163 /* if the copy buffer is partially full, fill it up and write */
188 /* if there's anything in it, write the whole buffer, including junk */
194 /* Traverse skb structure and copy fragments in to PIO buffer.
223 struct efx_tx_buffer *buffer =
227 /* Copy to PIO buffer. Ensure the writes are padded to the end
233 /* The size of the copy buffer will ensure all writes
246 * after the source, and the destination buffer is big enough.
254 buffer->skb = skb;
255 buffer->flags = EFX_TX_BUF_SKB | EFX_TX_BUF_OPTION;
257 EFX_POPULATE_QWORD_5(buffer->option,
269 * a buffer on the device. This can reduce latency at the expense of
272 * only one packet at a time can be using the PIO buffer. If the xmit_more
307 * Add a socket buffer to a TX queue
309 * This maps all fragments of a socket buffer for DMA and adds them to
311 * the number of fragments in the socket buffer.
423 /* Transmit a packet from an XDP buffer
564 struct efx_tx_buffer *buffer = &tx_queue->buffer[read_ptr];
566 if (!efx_tx_buffer_in_use(buffer)) {
577 if (buffer->flags & EFX_TX_BUF_SKB)
579 efx_dequeue_buffer(tx_queue, buffer, &pkts_compl, &bytes_compl);