xref: /dpdk/drivers/net/sfc/sfc_nic_dma.h (revision 3037e6cf3ddec72a4091b5f023301152a0640900)
1*3037e6cfSViacheslav Galaktionov /* SPDX-License-Identifier: BSD-3-Clause
2*3037e6cfSViacheslav Galaktionov  * Copyright(c) 2021 Xilinx, Inc.
3*3037e6cfSViacheslav Galaktionov  */
4*3037e6cfSViacheslav Galaktionov 
5*3037e6cfSViacheslav Galaktionov #ifndef _SFC_NIC_DMA_H
6*3037e6cfSViacheslav Galaktionov #define _SFC_NIC_DMA_H
7*3037e6cfSViacheslav Galaktionov 
8*3037e6cfSViacheslav Galaktionov #include <rte_memzone.h>
9*3037e6cfSViacheslav Galaktionov 
10*3037e6cfSViacheslav Galaktionov #include "efx.h"
11*3037e6cfSViacheslav Galaktionov 
12*3037e6cfSViacheslav Galaktionov #include "sfc.h"
13*3037e6cfSViacheslav Galaktionov 
14*3037e6cfSViacheslav Galaktionov #ifdef __cplusplus
15*3037e6cfSViacheslav Galaktionov extern "C" {
16*3037e6cfSViacheslav Galaktionov #endif
17*3037e6cfSViacheslav Galaktionov 
18*3037e6cfSViacheslav Galaktionov int sfc_nic_dma_attach(struct sfc_adapter *sa);
19*3037e6cfSViacheslav Galaktionov void sfc_nic_dma_detach(struct sfc_adapter *sa);
20*3037e6cfSViacheslav Galaktionov 
21*3037e6cfSViacheslav Galaktionov int sfc_nic_dma_mz_map(struct sfc_adapter *sa, const struct rte_memzone *mz,
22*3037e6cfSViacheslav Galaktionov 		       efx_nic_dma_addr_type_t addr_type,
23*3037e6cfSViacheslav Galaktionov 		       efsys_dma_addr_t *dma_addr);
24*3037e6cfSViacheslav Galaktionov 
25*3037e6cfSViacheslav Galaktionov #ifdef __cplusplus
26*3037e6cfSViacheslav Galaktionov }
27*3037e6cfSViacheslav Galaktionov #endif
28*3037e6cfSViacheslav Galaktionov 
29*3037e6cfSViacheslav Galaktionov #endif  /* _SFC_NIC_DMA_H */
30