aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/dpdk/device
diff options
context:
space:
mode:
authorMatthew Smith <mgsmith@netgate.com>2017-12-11 17:29:57 -0600
committerDamjan Marion <dmarion.lists@gmail.com>2017-12-14 09:50:28 +0000
commit2f5eb0afa0893e94ed0115896d274de6f48cb93c (patch)
tree7a7f8eb93d7bdefcb8a5c631a71ecfe111b0f6ad /src/plugins/dpdk/device
parent5e52529adaa3a36402a2cc4f0f364060c5afc014 (diff)
Enable AWS ENA PMD
Elastic Network Adapter PMD for newer AWS instance types Change-Id: Ic7f6ac4a261ccc7af3ffb2ed8950274532e3feae Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Diffstat (limited to 'src/plugins/dpdk/device')
-rw-r--r--src/plugins/dpdk/device/dpdk.h3
-rw-r--r--src/plugins/dpdk/device/format.c4
-rwxr-xr-xsrc/plugins/dpdk/device/init.c7
3 files changed, 13 insertions, 1 deletions
diff --git a/src/plugins/dpdk/device/dpdk.h b/src/plugins/dpdk/device/dpdk.h
index 51ead045aca..770da6e3da6 100644
--- a/src/plugins/dpdk/device/dpdk.h
+++ b/src/plugins/dpdk/device/dpdk.h
@@ -79,7 +79,8 @@ extern vlib_node_registration_t dpdk_input_node;
_ ("net_mlx5", MLX5) \
_ ("net_dpaa2", DPAA2) \
_ ("net_virtio_user", VIRTIO_USER) \
- _ ("net_vhost", VHOST_ETHER)
+ _ ("net_vhost", VHOST_ETHER) \
+ _ ("net_ena", ENA)
typedef enum
{
diff --git a/src/plugins/dpdk/device/format.c b/src/plugins/dpdk/device/format.c
index faf59e79211..8ea65c12ce2 100644
--- a/src/plugins/dpdk/device/format.c
+++ b/src/plugins/dpdk/device/format.c
@@ -332,6 +332,10 @@ format_dpdk_device_type (u8 * s, va_list * args)
dev_type = "VhostEthernet";
break;
+ case VNET_DPDK_PMD_ENA:
+ dev_type = "AWS ENA VF";
+ break;
+
default:
case VNET_DPDK_PMD_UNKNOWN:
dev_type = "### UNKNOWN ###";
diff --git a/src/plugins/dpdk/device/init.c b/src/plugins/dpdk/device/init.c
index 20272853035..a6b6440f230 100755
--- a/src/plugins/dpdk/device/init.c
+++ b/src/plugins/dpdk/device/init.c
@@ -411,6 +411,10 @@ dpdk_lib_init (dpdk_main_t * dm)
xd->port_conf.rxmode.hw_strip_crc = 1;
break;
+ case VNET_DPDK_PMD_ENA:
+ xd->port_type = VNET_DPDK_PORT_TYPE_ETH_VF;
+ break;
+
case VNET_DPDK_PMD_DPAA2:
xd->port_type = VNET_DPDK_PORT_TYPE_ETH_10G;
break;
@@ -736,6 +740,9 @@ dpdk_bind_devices_to_uio (dpdk_config_main_t * conf)
/* Chelsio T4/T5 */
else if (d->vendor_id == 0x1425 && (d->device_id & 0xe000) == 0x4000)
;
+ /* Amazen Elastic Network Adapter */
+ else if (d->vendor_id == 0x1d0f && d->device_id >= 0xec20 && d->device_id <= 0xec21)
+ ;
/* Mellanox */
else if (d->vendor_id == 0x15b3 && d->device_id >= 0x1013 && d->device_id <= 0x101a)
{