FD.io VPP  v19.08-27-gf4dcae4
Vector Packet Processing
vmxnet3.api
Go to the documentation of this file.
1 /*
2  *------------------------------------------------------------------
3  * Copyright (c) 2018 Cisco and/or its affiliates.
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at:
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *------------------------------------------------------------------
16  */
17 
18 option version = "1.0.0";
19 
20 /** \brief
21  @param client_index - opaque cookie to identify the sender
22  @param context - sender context, to match reply w/ request
23  @param pci_addr - pci address as unsigned 32bit integer:
24  0-15 domain, 16-23 bus, 24-28 slot, 29-31 function
25  ddddddddddddddddbbbbbbbbsssssfff
26  @param enable_elog - turn on elog (optional - default is off)
27  @param rxq_size - receive queue size (optional - default is 1024)
28  @param rxq_num - number of receive queues (optional - default is 1)
29  @param txq_size - transmit queue size (optional - default is 1024)
30  @param txq_num - number of transmit queues (optional - default is 1)
31  @param bind - automatically bind PCI to vfio-pci module
32  (optional - default is 0)
33 */
34 
35 define vmxnet3_create
36 {
39 
47 };
48 
49 /** \brief
50  @param context - sender context, to match reply w/ request
51  @param retval - return value for request
52  @param sw_if_index - software index for the new vmxnet3 interface
53 */
54 
55 define vmxnet3_create_reply
56 {
60 };
61 
62 /** \brief
63  @param client_index - opaque cookie to identify the sender
64  @param context - sender context, to match reply w/ request
65  @param sw_if_index - interface index
66 */
67 
68 autoreply define vmxnet3_delete
69 {
72 
74 };
75 
76 /** \brief vmxnet3_tx_list structure
77  @param tx_qsize - tx queue size
78  @param tx_next - tx next index
79  @param tx_produce - tx produce index
80  @param tx_consume - tx consume index
81 */
82 
83 typeonly define vmxnet3_tx_list
84 {
89 };
90 
91 /** \brief vmxnet3_rx_list structure
92  @param rx_qsize - rx queue size
93  @param rx_fill - rx fill count
94  @param rx_next - rx next index
95  @param rx_produce - rx produce index
96  @param rx_consume - rx consume index
97 */
98 
99 typeonly define vmxnet3_rx_list
100 {
102  u16 rx_fill[2];
104  u16 rx_produce[2];
105  u16 rx_consume[2];
106 };
107 
108 /** \brief Memory interface details structure
109  @param context - sender context, to match reply w/ request (memif_dump)
110  @param sw_if_index - index of the interface
111  @param if_name - name of the interface
112  @param hw_addr - interface MAC address
113  @param pci_addr - pci address of the interface
114  @param version - vmxnet3 hardware version
115  @param admin_up_down - interface administrative status
116  @param rx_count - number of elements in rx_list
117  @param rx_list - list of vmxnet3_rx_list
118  @param tx_count - number of elements in tx_list
119  @param tx_list - list of vmnxnet3_tx_list
120 */
121 define vmxnet3_details
122 {
124 
126  u8 if_name[64];
127  u8 hw_addr[6];
131 
134 
137 };
138 
139 /** \brief Dump all vmxnet3 interfaces
140  @param client_index - opaque cookie to identify the sender
141  @param context - sender context, to match reply w/ request
142 */
143 define vmxnet3_dump
144 {
147 };
148 
149 /*
150  * Local Variables:
151  * eval: (c-set-style "gnu")
152  * End:
153  */
unsigned char u8
Definition: types.h:56
unsigned int u32
Definition: types.h:88
option version
Definition: vmxnet3.api:18
unsigned short u16
Definition: types.h:57
signed int i32
Definition: types.h:77
vmxnet3_rx_list structure
Definition: vmxnet3.api:99
vmxnet3_tx_list structure
Definition: vmxnet3.api:83