diff options
author | Rui Cai <rucai@microsoft.com> | 2018-05-11 22:13:58 +0000 |
---|---|---|
committer | Damjan Marion <dmarion.lists@gmail.com> | 2018-05-12 07:14:09 +0000 |
commit | 257d8d4f0fc5019b6d62682d61b07fe02ab4f24a (patch) | |
tree | 22eb4a98842eba6e7be5358feaaa66fd23763037 | |
parent | 60bd3028270b1ae297def6f14b65e24a3697a3ed (diff) |
dpdk: Add constants for failsafe PMD
Adding name, enum constants and formatting code
for failsafe PMD.
This is part of initial effort to enable vpp running over
dpdk on failsafe PMD in Microsoft Azure(2/4).
Change-Id: I4eb0093db9f666e2635f7ddff451e3c9064bd0c4
Signed-off-by: Rui Cai <rucai@microsoft.com>
-rw-r--r-- | src/plugins/dpdk/device/dpdk.h | 4 | ||||
-rw-r--r-- | src/plugins/dpdk/device/format.c | 11 |
2 files changed, 13 insertions, 2 deletions
diff --git a/src/plugins/dpdk/device/dpdk.h b/src/plugins/dpdk/device/dpdk.h index e1966e438c0..eed1126da74 100644 --- a/src/plugins/dpdk/device/dpdk.h +++ b/src/plugins/dpdk/device/dpdk.h @@ -80,7 +80,8 @@ extern vlib_node_registration_t dpdk_input_node; _ ("net_dpaa2", DPAA2) \ _ ("net_virtio_user", VIRTIO_USER) \ _ ("net_vhost", VHOST_ETHER) \ - _ ("net_ena", ENA) + _ ("net_ena", ENA) \ + _ ("net_failsafe", FAILSAFE) typedef enum { @@ -109,6 +110,7 @@ typedef enum VNET_DPDK_PORT_TYPE_ETH_VF, VNET_DPDK_PORT_TYPE_VIRTIO_USER, VNET_DPDK_PORT_TYPE_VHOST_ETHER, + VNET_DPDK_PORT_TYPE_FAILSAFE, VNET_DPDK_PORT_TYPE_UNKNOWN, } dpdk_port_type_t; diff --git a/src/plugins/dpdk/device/format.c b/src/plugins/dpdk/device/format.c index 38090244f27..6dd80e01ede 100644 --- a/src/plugins/dpdk/device/format.c +++ b/src/plugins/dpdk/device/format.c @@ -235,6 +235,10 @@ format_dpdk_device_name (u8 * s, va_list * args) device_name = "VhostEthernet"; break; + case VNET_DPDK_PORT_TYPE_FAILSAFE: + device_name = "FailsafeEthernet"; + break; + default: case VNET_DPDK_PORT_TYPE_UNKNOWN: device_name = "UnknownEthernet"; @@ -243,7 +247,8 @@ format_dpdk_device_name (u8 * s, va_list * args) rte_eth_dev_info_get (i, &dev_info); - if (dev_info.pci_dev) + if (dev_info.pci_dev && + dm->devices[i].port_type != VNET_DPDK_PORT_TYPE_FAILSAFE) ret = format (s, devname_format, device_name, dev_info.pci_dev->addr.bus, dev_info.pci_dev->addr.devid, dev_info.pci_dev->addr.function); @@ -363,6 +368,10 @@ format_dpdk_device_type (u8 * s, va_list * args) dev_type = "AWS ENA VF"; break; + case VNET_DPDK_PMD_FAILSAFE: + dev_type = "Failsafe Ethernet"; + break; + default: case VNET_DPDK_PMD_UNKNOWN: dev_type = "### UNKNOWN ###"; |