Lines Matching refs:buffer

83 /* Size of an RX scatter buffer.  Small enough to pack 2 into a 4K page,
89 * of every buffer. Otherwise, we just need to ensure 4-byte
111 * struct efx_buffer - A general-purpose DMA buffer
112 * @addr: host base address of the buffer
113 * @dma_addr: DMA base address of the buffer
126 * struct efx_tx_buffer - buffer state for a TX descriptor
127 * @skb: When @flags & %EFX_TX_BUF_SKB, the associated socket buffer to be
130 * member is the associated buffer to drop a page reference on.
156 #define EFX_TX_BUF_SKB 2 /* buffer is last part of skb */
157 #define EFX_TX_BUF_MAP_SINGLE 8 /* buffer was mapped with dma_map_single() */
158 #define EFX_TX_BUF_OPTION 0x10 /* empty buffer for option descriptor */
159 #define EFX_TX_BUF_XDP 0x20 /* buffer was sent with XDP */
160 #define EFX_TX_BUF_TSO_V3 0x40 /* empty buffer for a TSO_V3 descriptor */
161 #define EFX_TX_BUF_EFV 0x100 /* buffer was sent from representor */
166 * This is a ring buffer of TX fragments.
185 * @buffer: The software buffer ring
190 * @piobuf: PIO buffer region for this TX queue (shared with its partner).
249 struct efx_tx_buffer *buffer;
295 * struct efx_rx_buffer - An Efx RX data buffer
296 * @dma_addr: DMA base address of the buffer
297 * @page: The associated page buffer.
298 * Will be %NULL if the buffer slot is currently free.
303 * @flags: Flags for buffer and packet state. These are only set on the
304 * first buffer of a scattered packet.
321 * struct efx_rx_page_state - Page-based rx buffer state
340 * @buffer: The software buffer ring
370 * @recycle_count: RX buffer recycle counter.
379 struct efx_rx_buffer *buffer;
438 * @eventq: Event queue buffer
473 * @rx_pkt_index: Ring index of first buffer for next packet to be delivered
576 * @receive_raw: Handle an RX buffer ready to be passed to __efx_rx_packet()
875 * @rx_buffer_order: Order (log2) of number of pages for each RX buffer
876 * @rx_buffer_truesize: Amortised allocation size of an RX buffer,
895 * @irq_status: Interrupt status buffer
914 * @stats_buffer: DMA buffer for statistics
1212 * @dimension_resources: Dimension controller resources (buffer table,
1249 * defined maximum, but its buffer will be padded to a multiple
1253 * be a multiple of 4. The length may not be, but the buffer
1283 * @rx_packet: Receive the queued RX buffer on a channel
1467 size_t *retlen, u8 *buffer);
1470 size_t *retlen, const u8 *buffer);
1646 /* Returns a pointer to the specified receive buffer in the RX
1652 return &rx_queue->buffer[index];
1741 /* Get a TX buffer. */
1745 return &tx_queue->buffer[efx_tx_queue_get_insert_index(tx_queue)];
1748 /* Get a TX buffer, checking it's not currently in use. */
1752 struct efx_tx_buffer *buffer =
1755 EFX_WARN_ON_ONCE_PARANOID(buffer->len);
1756 EFX_WARN_ON_ONCE_PARANOID(buffer->flags);
1757 EFX_WARN_ON_ONCE_PARANOID(buffer->unmap_len);
1759 return buffer;