FD.io VPP
v19.04.4-rc0-5-ge88582fac
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
{
37
u32
client_index
;
38
u32
context
;
39
40
u32
pci_addr
;
41
i32
enable_elog
;
42
u16
rxq_size
;
43
u16
rxq_num
;
44
u16
txq_size
;
45
u16
txq_num
;
46
u8
bind
;
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
{
57
u32
context
;
58
i32
retval
;
59
u32
sw_if_index
;
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
{
70
u32
client_index
;
71
u32
context
;
72
73
u32
sw_if_index
;
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
{
85
u16
tx_qsize
;
86
u16
tx_next
;
87
u16
tx_produce
;
88
u16
tx_consume
;
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
{
101
u16
rx_qsize
;
102
u16
rx_fill[2];
103
u16
rx_next
;
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
{
123
u32
context
;
124
125
u32
sw_if_index
;
126
u8
if_name[64];
127
u8
hw_addr[6];
128
u32
pci_addr
;
129
u8
version
;
130
u8
admin_up_down
;
131
132
u8
rx_count
;
133
vl_api_vmxnet3_rx_list_t
rx_list[16];
134
135
u8
tx_count
;
136
vl_api_vmxnet3_tx_list_t
tx_list[8];
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
{
145
u32
client_index
;
146
u32
context
;
147
};
148
149
/*
150
* Local Variables:
151
* eval: (c-set-style "gnu")
152
* End:
153
*/
vl_api_vmxnet3_details_t::admin_up_down
u8 admin_up_down
Definition:
vmxnet3.api:130
vl_api_vmxnet3_create_t::rxq_size
u16 rxq_size
Definition:
vmxnet3.api:42
vl_api_vmxnet3_delete_t::client_index
u32 client_index
Definition:
vmxnet3.api:70
vl_api_vmxnet3_details_t::pci_addr
u32 pci_addr
Definition:
vmxnet3.api:128
vl_api_vmxnet3_create_t::txq_num
u16 txq_num
Definition:
vmxnet3.api:45
vl_api_vmxnet3_create_t::rxq_num
u16 rxq_num
Definition:
vmxnet3.api:43
vl_api_vmxnet3_details_t::sw_if_index
u32 sw_if_index
Definition:
vmxnet3.api:125
vl_api_vmxnet3_details_t::version
u8 version
Definition:
vmxnet3.api:129
u8
unsigned char u8
Definition:
types.h:56
vl_api_vmxnet3_create_t::client_index
u32 client_index
Definition:
vmxnet3.api:37
vl_api_vmxnet3_create_reply_t::context
u32 context
Definition:
vmxnet3.api:57
vl_api_vmxnet3_delete_t::sw_if_index
u32 sw_if_index
Definition:
vmxnet3.api:73
u32
unsigned int u32
Definition:
types.h:88
vl_api_vmxnet3_create_t::txq_size
u16 txq_size
Definition:
vmxnet3.api:44
version
option version
Definition:
vmxnet3.api:18
vl_api_vmxnet3_dump_t::context
u32 context
Definition:
vmxnet3.api:146
vl_api_vmxnet3_details_t::rx_count
u8 rx_count
Definition:
vmxnet3.api:132
u16
unsigned short u16
Definition:
types.h:57
vl_api_vmxnet3_tx_list_t::tx_produce
u16 tx_produce
Definition:
vmxnet3.api:87
vl_api_vmxnet3_create_t::bind
u8 bind
Definition:
vmxnet3.api:46
vl_api_vmxnet3_create_reply_t::retval
i32 retval
Definition:
vmxnet3.api:58
vl_api_vmxnet3_tx_list_t::tx_next
u16 tx_next
Definition:
vmxnet3.api:86
vl_api_vmxnet3_tx_list_t::tx_consume
u16 tx_consume
Definition:
vmxnet3.api:88
vl_api_vmxnet3_details_t::context
u32 context
Definition:
vmxnet3.api:123
vl_api_vmxnet3_create_t::enable_elog
i32 enable_elog
Definition:
vmxnet3.api:41
vl_api_vmxnet3_tx_list_t::tx_qsize
u16 tx_qsize
Definition:
vmxnet3.api:85
i32
signed int i32
Definition:
types.h:77
vl_api_vmxnet3_rx_list_t::rx_next
u16 rx_next
Definition:
vmxnet3.api:103
vl_api_vmxnet3_rx_list_t
vmxnet3_rx_list structure
Definition:
vmxnet3.api:99
vl_api_vmxnet3_create_t::pci_addr
u32 pci_addr
Definition:
vmxnet3.api:40
vl_api_vmxnet3_create_t::context
u32 context
Definition:
vmxnet3.api:38
vl_api_vmxnet3_dump_t::client_index
u32 client_index
Definition:
vmxnet3.api:145
vl_api_vmxnet3_create_reply_t::sw_if_index
u32 sw_if_index
Definition:
vmxnet3.api:59
vl_api_vmxnet3_delete_t::context
u32 context
Definition:
vmxnet3.api:71
vl_api_vmxnet3_tx_list_t
vmxnet3_tx_list structure
Definition:
vmxnet3.api:83
vl_api_vmxnet3_rx_list_t::rx_qsize
u16 rx_qsize
Definition:
vmxnet3.api:101
vl_api_vmxnet3_details_t::tx_count
u8 tx_count
Definition:
vmxnet3.api:135
src
plugins
vmxnet3
vmxnet3.api
Generated on Mon Jun 29 2020 12:02:28 for FD.io VPP by
1.8.13