xref: /dpdk/examples/pipeline/thread.h (revision 41f5dfcbf973b41d08fdfd2842c0e539edcc4f03)
1b77f6600SCristian Dumitrescu /* SPDX-License-Identifier: BSD-3-Clause
2b77f6600SCristian Dumitrescu  * Copyright(c) 2020 Intel Corporation
3b77f6600SCristian Dumitrescu  */
4b77f6600SCristian Dumitrescu 
5b77f6600SCristian Dumitrescu #ifndef _INCLUDE_THREAD_H_
6b77f6600SCristian Dumitrescu #define _INCLUDE_THREAD_H_
7b77f6600SCristian Dumitrescu 
8b77f6600SCristian Dumitrescu #include <stdint.h>
9b77f6600SCristian Dumitrescu 
10b9559f94SCristian Dumitrescu #include <rte_swx_pipeline.h>
11b77f6600SCristian Dumitrescu 
12*41f5dfcbSCristian Dumitrescu /**
13*41f5dfcbSCristian Dumitrescu  * Control plane (CP) thread.
14*41f5dfcbSCristian Dumitrescu  */
15b77f6600SCristian Dumitrescu int
16b77f6600SCristian Dumitrescu thread_init(void);
17b77f6600SCristian Dumitrescu 
18b77f6600SCristian Dumitrescu int
19*41f5dfcbSCristian Dumitrescu pipeline_enable(struct rte_swx_pipeline *p, uint32_t thread_id);
20*41f5dfcbSCristian Dumitrescu 
21*41f5dfcbSCristian Dumitrescu void
22*41f5dfcbSCristian Dumitrescu pipeline_disable(struct rte_swx_pipeline *p);
23*41f5dfcbSCristian Dumitrescu 
24*41f5dfcbSCristian Dumitrescu /**
25*41f5dfcbSCristian Dumitrescu  * Data plane (DP) threads.
26*41f5dfcbSCristian Dumitrescu  */
27*41f5dfcbSCristian Dumitrescu int
28b77f6600SCristian Dumitrescu thread_main(void *arg);
29b77f6600SCristian Dumitrescu 
30b77f6600SCristian Dumitrescu #endif /* _INCLUDE_THREAD_H_ */
31