u8 mac_address[6];
u8 random_mac = 1;
u8 gso_enabled = 0;
+ u8 checksum_offload_enabled = 0;
u32 pci_addr = 0;
u64 features = (u64) ~ (0ULL);
int ret;
;
else if (unformat (i, "gso-enabled"))
gso_enabled = 1;
+ else if (unformat (i, "csum-offload-enabled"))
+ checksum_offload_enabled = 1;
else
break;
}
mp->use_random_mac = random_mac;
- mp->pci_addr = htonl (pci_addr);
+ mp->pci_addr.domain = htons (((vlib_pci_addr_t) pci_addr).domain);
+ mp->pci_addr.bus = ((vlib_pci_addr_t) pci_addr).bus;
+ mp->pci_addr.slot = ((vlib_pci_addr_t) pci_addr).slot;
+ mp->pci_addr.function = ((vlib_pci_addr_t) pci_addr).function;
+
mp->features = clib_host_to_net_u64 (features);
mp->gso_enabled = gso_enabled;
+ mp->checksum_offload_enabled = checksum_offload_enabled;
if (random_mac == 0)
clib_memcpy (mp->mac_address, mac_address, 6);
u32 as_u32;
} pci_addr_t;
pci_addr_t addr;
- addr.as_u32 = ntohl (mp->pci_addr);
+
+ addr.domain = ntohs (mp->pci_addr.domain);
+ addr.bus = mp->pci_addr.bus;
+ addr.slot = mp->pci_addr.slot;
+ addr.function = mp->pci_addr.function;
+
u8 *pci_addr = format (0, "%04x:%02x:%02x.%x", addr.domain, addr.bus,
addr.slot, addr.function);
{
vat_main_t *vam = &vat_main;
vat_json_node_t *node = NULL;
+ vlib_pci_addr_t pci_addr;
if (VAT_JSON_ARRAY != vam->json_tree.type)
{
}
node = vat_json_array_add (&vam->json_tree);
+ pci_addr.domain = ntohs (mp->pci_addr.domain);
+ pci_addr.bus = mp->pci_addr.bus;
+ pci_addr.slot = mp->pci_addr.slot;
+ pci_addr.function = mp->pci_addr.function;
+
vat_json_init_object (node);
- vat_json_object_add_uint (node, "pci-addr", ntohl (mp->pci_addr));
+ vat_json_object_add_uint (node, "pci-addr", pci_addr.as_u32);
vat_json_object_add_uint (node, "sw_if_index", ntohl (mp->sw_if_index));
vat_json_object_add_uint (node, "rx_ring_sz", ntohs (mp->rx_ring_sz));
vat_json_object_add_uint (node, "tx_ring_sz", ntohs (mp->tx_ring_sz));
"<vpp-if-name> | sw_if_index <id>") \
_(sw_interface_tap_v2_dump, "") \
_(virtio_pci_create, \
- "pci-addr <pci-address> [use_random_mac | hw-addr <mac-addr>] [features <hex-value>] [gso-enabled]") \
+ "pci-addr <pci-address> [use_random_mac | hw-addr <mac-addr>] [features <hex-value>] [gso-enabled | csum-offload-enabled]") \
_(virtio_pci_delete, \
"<vpp-if-name> | sw_if_index <id>") \
_(sw_interface_virtio_pci_dump, "") \