From b72a77685fe3038af8b84ba1b32724f263482bf1 Mon Sep 17 00:00:00 2001 From: Jerin Jacob Date: Thu, 21 Jul 2016 19:31:47 +0530 Subject: [PATCH] net/thunderx: support 81xx SoC 81xx NIC subsystem differs in new PCI subsystem_device_id and NICVF_CAP_CQE_RX2 capability. Signed-off-by: Jerin Jacob --- doc/guides/nics/thunderx.rst | 1 + drivers/net/thunderx/base/nicvf_hw.c | 3 +++ drivers/net/thunderx/base/nicvf_hw.h | 1 + drivers/net/thunderx/nicvf_ethdev.c | 7 +++++++ 4 files changed, 12 insertions(+) diff --git a/doc/guides/nics/thunderx.rst b/doc/guides/nics/thunderx.rst index 248b1af7bf..acc05a4ae9 100644 --- a/doc/guides/nics/thunderx.rst +++ b/doc/guides/nics/thunderx.rst @@ -60,6 +60,7 @@ Features of the ThunderX PMD are: Supported ThunderX SoCs ----------------------- - CN88xx +- CN81xx Prerequisites ------------- diff --git a/drivers/net/thunderx/base/nicvf_hw.c b/drivers/net/thunderx/base/nicvf_hw.c index 2b12d9c756..4bdd18326c 100644 --- a/drivers/net/thunderx/base/nicvf_hw.c +++ b/drivers/net/thunderx/base/nicvf_hw.c @@ -143,6 +143,9 @@ nicvf_base_init(struct nicvf *nic) if (nicvf_hw_version(nic) == PCI_SUB_DEVICE_ID_CN88XX_PASS2_NICVF) nic->hwcap |= NICVF_CAP_TUNNEL_PARSING; + if (nicvf_hw_version(nic) == PCI_SUB_DEVICE_ID_CN81XX_NICVF) + nic->hwcap |= NICVF_CAP_TUNNEL_PARSING | NICVF_CAP_CQE_RX2; + return NICVF_OK; } diff --git a/drivers/net/thunderx/base/nicvf_hw.h b/drivers/net/thunderx/base/nicvf_hw.h index 5629d9c130..a6cda82dce 100644 --- a/drivers/net/thunderx/base/nicvf_hw.h +++ b/drivers/net/thunderx/base/nicvf_hw.h @@ -42,6 +42,7 @@ #define PCI_DEVICE_ID_THUNDERX_NICVF 0xA034 #define PCI_SUB_DEVICE_ID_CN88XX_PASS1_NICVF 0xA11E #define PCI_SUB_DEVICE_ID_CN88XX_PASS2_NICVF 0xA134 +#define PCI_SUB_DEVICE_ID_CN81XX_NICVF 0xA234 #define NICVF_ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) diff --git a/drivers/net/thunderx/nicvf_ethdev.c b/drivers/net/thunderx/nicvf_ethdev.c index 0875ba5566..b758c9fb6a 100644 --- a/drivers/net/thunderx/nicvf_ethdev.c +++ b/drivers/net/thunderx/nicvf_ethdev.c @@ -1757,6 +1757,13 @@ static const struct rte_pci_id pci_id_nicvf_map[] = { .subsystem_vendor_id = PCI_VENDOR_ID_CAVIUM, .subsystem_device_id = PCI_SUB_DEVICE_ID_CN88XX_PASS2_NICVF, }, + { + .class_id = RTE_CLASS_ANY_ID, + .vendor_id = PCI_VENDOR_ID_CAVIUM, + .device_id = PCI_DEVICE_ID_THUNDERX_NICVF, + .subsystem_vendor_id = PCI_VENDOR_ID_CAVIUM, + .subsystem_device_id = PCI_SUB_DEVICE_ID_CN81XX_NICVF, + }, { .vendor_id = 0, }, -- 2.20.1