From 29b32c2ae3e3cbe5ceaa607c8f4b31a2ac2faaa3 Mon Sep 17 00:00:00 2001 From: "Igor Mikhailov (imichail)" Date: Fri, 13 Jul 2018 16:59:09 -0700 Subject: Add QEDE poll mode driver (librte_pmd_qede) The driver implements Cavium QLogic FastLinQ QL4xxxx 10G/25G/40G/50G/100G Intelligent Ethernet Adapters (IEA) and Converged Network Adapters (CNA) (doc/guides/nics/qede.rst) Change-Id: If17e8cb572eb8c0585085be1c7cfdfa159eb6e68 Signed-off-by: Igor Mikhailov (imichail) --- src/plugins/dpdk/device/dpdk.h | 3 ++- src/plugins/dpdk/device/format.c | 4 ++++ src/plugins/dpdk/device/init.c | 7 ++++--- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/plugins/dpdk/device/dpdk.h b/src/plugins/dpdk/device/dpdk.h index 8fa803567ee..f09a69c7f45 100644 --- a/src/plugins/dpdk/device/dpdk.h +++ b/src/plugins/dpdk/device/dpdk.h @@ -84,7 +84,8 @@ extern vlib_node_registration_t dpdk_input_node; _ ("net_vhost", VHOST_ETHER) \ _ ("net_ena", ENA) \ _ ("net_failsafe", FAILSAFE) \ - _ ("net_liovf", LIOVF_ETHER) + _ ("net_liovf", LIOVF_ETHER) \ + _ ("net_qede", QEDE) typedef enum { diff --git a/src/plugins/dpdk/device/format.c b/src/plugins/dpdk/device/format.c index 5338ee95057..afd2a506436 100644 --- a/src/plugins/dpdk/device/format.c +++ b/src/plugins/dpdk/device/format.c @@ -383,6 +383,10 @@ format_dpdk_device_type (u8 * s, va_list * args) dev_type = "Cavium Lio VF"; break; + case VNET_DPDK_PMD_QEDE: + dev_type = "Cavium QLogic FastLinQ QL4xxxx"; + 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 44182ba17e1..bd249e91b28 100644 --- a/src/plugins/dpdk/device/init.c +++ b/src/plugins/dpdk/device/init.c @@ -436,6 +436,7 @@ dpdk_lib_init (dpdk_main_t * dm) case VNET_DPDK_PMD_CXGBE: case VNET_DPDK_PMD_MLX4: case VNET_DPDK_PMD_MLX5: + case VNET_DPDK_PMD_QEDE: xd->port_type = port_type_from_speed_capa (&dev_info); break; @@ -834,14 +835,14 @@ dpdk_bind_devices_to_uio (dpdk_config_main_t * conf) /* Cavium Network Adapter */ else if (d->vendor_id == 0x177d && d->device_id == 0x9712) ; + /* Cavium FastlinQ QL41000 Series */ + else if (d->vendor_id == 0x1077 && d->device_id >= 0x8070 && d->device_id <= 0x8090) + ; /* Mellanox */ else if (d->vendor_id == 0x15b3 && d->device_id >= 0x1013 && d->device_id <= 0x101a) { continue; } - /* Cavium FastlinQ QL41000 Series */ - else if (d->vendor_id == 0x1077 && d->device_id >= 0x8070 && d->device_id <= 0x8090) - ; else { dpdk_log_warn ("Unsupported PCI device 0x%04x:0x%04x found " -- cgit 1.2.3-korg