aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/net/ethernet/sfc/rx_common.h
diff options
context:
space:
mode:
authorEdward Cree <ecree@solarflare.com>2020-06-30 13:11:52 +0100
committerDavid S. Miller <davem@davemloft.net>2020-06-30 13:09:09 -0700
commit80a0074e6aee3657784744ed66ca2c0cc918ecf8 (patch)
tree54e6700d6b8be92ac85f408d661ed681aaca0f1d /drivers/net/ethernet/sfc/rx_common.h
parentsfc: commonise some MAC configuration code (diff)
downloadwireguard-linux-80a0074e6aee3657784744ed66ca2c0cc918ecf8.tar.xz
wireguard-linux-80a0074e6aee3657784744ed66ca2c0cc918ecf8.zip
sfc: commonise efx_sync_rx_buffer()
The ef100 RX path will also need to DMA-sync RX buffers. Signed-off-by: Edward Cree <ecree@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/sfc/rx_common.h')
-rw-r--r--drivers/net/ethernet/sfc/rx_common.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/rx_common.h b/drivers/net/ethernet/sfc/rx_common.h
index 1672d74f30e2..207ccd8ba062 100644
--- a/drivers/net/ethernet/sfc/rx_common.h
+++ b/drivers/net/ethernet/sfc/rx_common.h
@@ -57,6 +57,15 @@ void efx_init_rx_buffer(struct efx_rx_queue *rx_queue,
unsigned int page_offset,
u16 flags);
void efx_unmap_rx_buffer(struct efx_nic *efx, struct efx_rx_buffer *rx_buf);
+
+static inline void efx_sync_rx_buffer(struct efx_nic *efx,
+ struct efx_rx_buffer *rx_buf,
+ unsigned int len)
+{
+ dma_sync_single_for_cpu(&efx->pci_dev->dev, rx_buf->dma_addr, len,
+ DMA_FROM_DEVICE);
+}
+
void efx_free_rx_buffers(struct efx_rx_queue *rx_queue,
struct efx_rx_buffer *rx_buf,
unsigned int num_bufs);