DPDK  26.07.0
rte_bpf_ethdev.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2018 Intel Corporation
3  */
4 
5 #ifndef _RTE_BPF_ETHDEV_H_
6 #define _RTE_BPF_ETHDEV_H_
7 
27 #include <rte_bpf.h>
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 enum {
34  RTE_BPF_ETH_F_NONE = 0,
36 };
37 
47 void
48 rte_bpf_eth_rx_unload(uint16_t port, uint16_t queue);
49 
59 void
60 rte_bpf_eth_tx_unload(uint16_t port, uint16_t queue);
61 
82 int
83 rte_bpf_eth_rx_elf_load(uint16_t port, uint16_t queue,
84  const struct rte_bpf_prm *prm, const char *fname, const char *sname,
85  uint32_t flags);
86 
107 int
108 rte_bpf_eth_tx_elf_load(uint16_t port, uint16_t queue,
109  const struct rte_bpf_prm *prm, const char *fname, const char *sname,
110  uint32_t flags);
111 
134 __rte_experimental
135 int
136 rte_bpf_eth_rx_install(uint16_t port, uint16_t queue, struct rte_bpf *bpf,
137  uint32_t flags);
138 
161 __rte_experimental
162 int
163 rte_bpf_eth_tx_install(uint16_t port, uint16_t queue, struct rte_bpf *bpf,
164  uint32_t flags);
165 
166 #ifdef __cplusplus
167 }
168 #endif
169 
170 #endif /* _RTE_BPF_ETHDEV_H_ */
__rte_experimental int rte_bpf_eth_rx_install(uint16_t port, uint16_t queue, struct rte_bpf *bpf, uint32_t flags)
void rte_bpf_eth_tx_unload(uint16_t port, uint16_t queue)
int rte_bpf_eth_tx_elf_load(uint16_t port, uint16_t queue, const struct rte_bpf_prm *prm, const char *fname, const char *sname, uint32_t flags)
__rte_experimental int rte_bpf_eth_tx_install(uint16_t port, uint16_t queue, struct rte_bpf *bpf, uint32_t flags)
int rte_bpf_eth_rx_elf_load(uint16_t port, uint16_t queue, const struct rte_bpf_prm *prm, const char *fname, const char *sname, uint32_t flags)
void rte_bpf_eth_rx_unload(uint16_t port, uint16_t queue)