xref: /dpdk/drivers/net/thunderx/nicvf_svf.h (revision aaf4363e1e9e518c034c7ff9938a2faefde9854d)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2016 Cavium, Inc
3  */
4 
5 #ifndef __THUNDERX_NICVF_SVF_H__
6 #define __THUNDERX_NICVF_SVF_H__
7 
8 struct nicvf;
9 
10 /**
11  * Enqueue new VF to secondary qsets.
12  *
13  * @param entry
14  *   Entry to be enqueued.
15  */
16 void
17 nicvf_svf_push(struct nicvf *vf);
18 
19 /**
20  * Dequeue a VF from secondary qsets.
21  *
22  * @return
23  *   Dequeued entry.
24  */
25 struct nicvf *
26 nicvf_svf_pop(void);
27 
28 /**
29  * Check if the queue of secondary qsets is empty.
30  *
31  * @return
32  *   0 on non-empty
33  *   otherwise empty
34  */
35 int
36 nicvf_svf_empty(void);
37 
38 #endif /* __THUNDERX_NICVF_SVF_H__  */
39