diff options
Diffstat (limited to 'drivers/net/sfc/net_driver.h')
-rw-r--r-- | drivers/net/sfc/net_driver.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/net/sfc/net_driver.h b/drivers/net/sfc/net_driver.h index 59c8ecc39aee..40c0d931b182 100644 --- a/drivers/net/sfc/net_driver.h +++ b/drivers/net/sfc/net_driver.h | |||
@@ -232,6 +232,24 @@ struct efx_rx_buffer { | |||
232 | }; | 232 | }; |
233 | 233 | ||
234 | /** | 234 | /** |
235 | * struct efx_rx_page_state - Page-based rx buffer state | ||
236 | * | ||
237 | * Inserted at the start of every page allocated for receive buffers. | ||
238 | * Used to facilitate sharing dma mappings between recycled rx buffers | ||
239 | * and those passed up to the kernel. | ||
240 | * | ||
241 | * @refcnt: Number of struct efx_rx_buffer's referencing this page. | ||
242 | * When refcnt falls to zero, the page is unmapped for dma | ||
243 | * @dma_addr: The dma address of this page. | ||
244 | */ | ||
245 | struct efx_rx_page_state { | ||
246 | unsigned refcnt; | ||
247 | dma_addr_t dma_addr; | ||
248 | |||
249 | unsigned int __pad[0] ____cacheline_aligned; | ||
250 | }; | ||
251 | |||
252 | /** | ||
235 | * struct efx_rx_queue - An Efx RX queue | 253 | * struct efx_rx_queue - An Efx RX queue |
236 | * @efx: The associated Efx NIC | 254 | * @efx: The associated Efx NIC |
237 | * @queue: DMA queue number | 255 | * @queue: DMA queue number |