bnxt: Add PCIe device IDs for bcm58802/bcm58808
authorRay Jui <ray.jui@broadcom.com>
Mon, 28 Aug 2017 17:40:28 +0000 (13:40 -0400)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Aug 2017 23:57:09 +0000 (16:57 -0700)
Add PCIe device ID for bcm58802 and bcm58808. Also add chip number
update to declare bcm588xx as chip class phase 4 and later

Signed-off-by: Ray Jui <ray.jui@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/broadcom/bnxt/bnxt.h

index 9657bfbeb816a4aa8b419f4fbe3654c82a8ece28..500681da3c161adff1c815bc9ed7e956750e510e 100644 (file)
@@ -104,6 +104,8 @@ enum board_idx {
        BCM57416_NPAR,
        BCM57452,
        BCM57454,
+       BCM58802,
+       BCM58808,
        NETXTREME_E_VF,
        NETXTREME_C_VF,
 };
@@ -140,11 +142,14 @@ static const struct {
        { "Broadcom BCM57416 NetXtreme-E Ethernet Partition" },
        { "Broadcom BCM57452 NetXtreme-E 10Gb/25Gb/40Gb/50Gb Ethernet" },
        { "Broadcom BCM57454 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb Ethernet" },
+       { "Broadcom BCM58802 NetXtreme-S 10Gb/25Gb/40Gb/50Gb Ethernet" },
+       { "Broadcom BCM58808 NetXtreme-S 10Gb/25Gb/40Gb/50Gb/100Gb Ethernet" },
        { "Broadcom NetXtreme-E Ethernet Virtual Function" },
        { "Broadcom NetXtreme-C Ethernet Virtual Function" },
 };
 
 static const struct pci_device_id bnxt_pci_tbl[] = {
+       { PCI_VDEVICE(BROADCOM, 0x1614), .driver_data = BCM57454 },
        { PCI_VDEVICE(BROADCOM, 0x16c0), .driver_data = BCM57417_NPAR },
        { PCI_VDEVICE(BROADCOM, 0x16c8), .driver_data = BCM57301 },
        { PCI_VDEVICE(BROADCOM, 0x16c9), .driver_data = BCM57302 },
@@ -175,8 +180,9 @@ static const struct pci_device_id bnxt_pci_tbl[] = {
        { PCI_VDEVICE(BROADCOM, 0x16ed), .driver_data = BCM57414_NPAR },
        { PCI_VDEVICE(BROADCOM, 0x16ee), .driver_data = BCM57416_NPAR },
        { PCI_VDEVICE(BROADCOM, 0x16ef), .driver_data = BCM57416_NPAR },
+       { PCI_VDEVICE(BROADCOM, 0x16f0), .driver_data = BCM58808 },
        { PCI_VDEVICE(BROADCOM, 0x16f1), .driver_data = BCM57452 },
-       { PCI_VDEVICE(BROADCOM, 0x1614), .driver_data = BCM57454 },
+       { PCI_VDEVICE(BROADCOM, 0xd802), .driver_data = BCM58802 },
 #ifdef CONFIG_BNXT_SRIOV
        { PCI_VDEVICE(BROADCOM, 0x1606), .driver_data = NETXTREME_E_VF },
        { PCI_VDEVICE(BROADCOM, 0x1609), .driver_data = NETXTREME_E_VF },
index 801c0f77d4a51414875c192707bab92888b18371..3521e467a64c2fbde75907c28b98c9fcc3b3781b 100644 (file)
@@ -990,6 +990,9 @@ struct bnxt {
 
 #define CHIP_NUM_5745X         0xd730
 
+#define CHIP_NUM_58802         0xd802
+#define CHIP_NUM_58808         0xd808
+
 #define BNXT_CHIP_NUM_5730X(chip_num)          \
        ((chip_num) >= CHIP_NUM_57301 &&        \
         (chip_num) <= CHIP_NUM_57304)
@@ -1021,6 +1024,10 @@ struct bnxt {
 #define BNXT_CHIP_NUM_57X1X(chip_num)          \
        (BNXT_CHIP_NUM_5731X(chip_num) || BNXT_CHIP_NUM_5741X(chip_num))
 
+#define BNXT_CHIP_NUM_588XX(chip_num)          \
+       ((chip_num) == CHIP_NUM_58802 ||        \
+        (chip_num) == CHIP_NUM_58808)
+
        struct net_device       *dev;
        struct pci_dev          *pdev;
 
@@ -1079,6 +1086,7 @@ struct bnxt {
 #define BNXT_CHIP_P4_PLUS(bp)                  \
        (BNXT_CHIP_NUM_57X1X((bp)->chip_num) || \
         BNXT_CHIP_NUM_5745X((bp)->chip_num) || \
+        BNXT_CHIP_NUM_588XX((bp)->chip_num) || \
         (BNXT_CHIP_NUM_58700((bp)->chip_num) &&        \
          !BNXT_CHIP_TYPE_NITRO_A0(bp)))