net/thunderx: support CN83xx devices
authorJerin Jacob <jerin.jacob@caviumnetworks.com>
Tue, 8 Nov 2016 06:31:26 +0000 (12:01 +0530)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Thu, 10 Nov 2016 23:52:23 +0000 (00:52 +0100)
83xx NIC subsystem differs in new PCI subsystem_device_id and
NICVF_CAP_DISABLE_APAD capability.

Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
doc/guides/nics/thunderx.rst
drivers/net/thunderx/base/nicvf_hw.c
drivers/net/thunderx/base/nicvf_hw.h
drivers/net/thunderx/nicvf_ethdev.c

index 9763bb6..187c9a4 100644 (file)
@@ -62,6 +62,7 @@ Supported ThunderX SoCs
 -----------------------
 - CN88xx
 - CN81xx
+- CN83xx
 
 Prerequisites
 -------------
index a69cd02..04b3b69 100644 (file)
@@ -146,6 +146,10 @@ nicvf_base_init(struct nicvf *nic)
        if (nicvf_hw_version(nic) == PCI_SUB_DEVICE_ID_CN81XX_NICVF)
                nic->hwcap |= NICVF_CAP_TUNNEL_PARSING | NICVF_CAP_CQE_RX2;
 
+       if (nicvf_hw_version(nic) == PCI_SUB_DEVICE_ID_CN83XX_NICVF)
+               nic->hwcap |= NICVF_CAP_TUNNEL_PARSING | NICVF_CAP_CQE_RX2 |
+                               NICVF_CAP_DISABLE_APAD;
+
        return NICVF_OK;
 }
 
index cf68be9..14fb2fe 100644 (file)
@@ -43,6 +43,7 @@
 #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        PCI_SUB_DEVICE_ID_CN83XX_NICVF                  0xA334
 
 #define NICVF_ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
 
index 501c8c2..466e49c 100644 (file)
@@ -2096,6 +2096,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_CN81XX_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_CN83XX_NICVF,
+       },
        {
                .vendor_id = 0,
        },