aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorMichael Chan <mchan@broadcom.com>2012-11-05 09:26:29 -0500
committerDavid S. Miller <davem@davemloft.net>2012-11-06 19:00:14 -0500
commit79d4969535f1d569d7ddf7f58242994e9479a28d (patch)
treebb6d55444c509896737b1bf2291d8994b54b7b8f /drivers/net
parentdea09247b46687ff6e46fc4b50988537d01c8e64 (diff)
tg3: Support 5717 C0
Add support for 5717C0 which is a 5720A0 with special bonds-out option. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/ethernet/broadcom/tg3.c9
-rw-r--r--drivers/net/ethernet/broadcom/tg3.h2
2 files changed, 10 insertions, 1 deletions
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
index a8800ac10df9..b7817cab46e9 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
@@ -291,6 +291,7 @@ static DEFINE_PCI_DEVICE_TABLE(tg3_pci_tbl) = {
291 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57790)}, 291 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57790)},
292 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57788)}, 292 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57788)},
293 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_5717)}, 293 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_5717)},
294 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_5717_C)},
294 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_5718)}, 295 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_5718)},
295 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57781)}, 296 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57781)},
296 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57785)}, 297 {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57785)},
@@ -14026,7 +14027,8 @@ out_not_found:
14026 14027
14027out_no_vpd: 14028out_no_vpd:
14028 if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5717) { 14029 if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5717) {
14029 if (tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717) 14030 if (tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717 ||
14031 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717_C)
14030 strcpy(tp->board_part_number, "BCM5717"); 14032 strcpy(tp->board_part_number, "BCM5717");
14031 else if (tp->pdev->device == TG3PCI_DEVICE_TIGON3_5718) 14033 else if (tp->pdev->device == TG3PCI_DEVICE_TIGON3_5718)
14032 strcpy(tp->board_part_number, "BCM5718"); 14034 strcpy(tp->board_part_number, "BCM5718");
@@ -14397,6 +14399,7 @@ static void __devinit tg3_detect_asic_rev(struct tg3 *tp, u32 misc_ctrl_reg)
14397 tg3_flag_set(tp, CPMU_PRESENT); 14399 tg3_flag_set(tp, CPMU_PRESENT);
14398 14400
14399 if (tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717 || 14401 if (tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717 ||
14402 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717_C ||
14400 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5718 || 14403 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5718 ||
14401 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5719 || 14404 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5719 ||
14402 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5720) 14405 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5720)
@@ -14424,6 +14427,9 @@ static void __devinit tg3_detect_asic_rev(struct tg3 *tp, u32 misc_ctrl_reg)
14424 if (tp->pci_chip_rev_id == CHIPREV_ID_5752_A0_HW) 14427 if (tp->pci_chip_rev_id == CHIPREV_ID_5752_A0_HW)
14425 tp->pci_chip_rev_id = CHIPREV_ID_5752_A0; 14428 tp->pci_chip_rev_id = CHIPREV_ID_5752_A0;
14426 14429
14430 if (tp->pci_chip_rev_id == CHIPREV_ID_5717_C0)
14431 tp->pci_chip_rev_id = CHIPREV_ID_5720_A0;
14432
14427 if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5717 || 14433 if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5717 ||
14428 GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5719 || 14434 GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5719 ||
14429 GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5720) 14435 GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5720)
@@ -16013,6 +16019,7 @@ static int __devinit tg3_init_one(struct pci_dev *pdev,
16013 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5761S || 16019 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5761S ||
16014 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5761SE || 16020 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5761SE ||
16015 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717 || 16021 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717 ||
16022 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5717_C ||
16016 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5718 || 16023 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5718 ||
16017 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5719 || 16024 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5719 ||
16018 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5720) { 16025 tp->pdev->device == TG3PCI_DEVICE_TIGON3_5720) {
diff --git a/drivers/net/ethernet/broadcom/tg3.h b/drivers/net/ethernet/broadcom/tg3.h
index d9308c32102e..b3c2bf2c082f 100644
--- a/drivers/net/ethernet/broadcom/tg3.h
+++ b/drivers/net/ethernet/broadcom/tg3.h
@@ -50,6 +50,7 @@
50#define TG3PCI_DEVICE_TIGON3_5785_G 0x1699 /* GPHY */ 50#define TG3PCI_DEVICE_TIGON3_5785_G 0x1699 /* GPHY */
51#define TG3PCI_DEVICE_TIGON3_5785_F 0x16a0 /* 10/100 only */ 51#define TG3PCI_DEVICE_TIGON3_5785_F 0x16a0 /* 10/100 only */
52#define TG3PCI_DEVICE_TIGON3_5717 0x1655 52#define TG3PCI_DEVICE_TIGON3_5717 0x1655
53#define TG3PCI_DEVICE_TIGON3_5717_C 0x1665
53#define TG3PCI_DEVICE_TIGON3_5718 0x1656 54#define TG3PCI_DEVICE_TIGON3_5718 0x1656
54#define TG3PCI_DEVICE_TIGON3_57781 0x16b1 55#define TG3PCI_DEVICE_TIGON3_57781 0x16b1
55#define TG3PCI_DEVICE_TIGON3_57785 0x16b5 56#define TG3PCI_DEVICE_TIGON3_57785 0x16b5
@@ -149,6 +150,7 @@
149#define CHIPREV_ID_57780_A0 0x57780000 150#define CHIPREV_ID_57780_A0 0x57780000
150#define CHIPREV_ID_57780_A1 0x57780001 151#define CHIPREV_ID_57780_A1 0x57780001
151#define CHIPREV_ID_5717_A0 0x05717000 152#define CHIPREV_ID_5717_A0 0x05717000
153#define CHIPREV_ID_5717_C0 0x05717200
152#define CHIPREV_ID_57765_A0 0x57785000 154#define CHIPREV_ID_57765_A0 0x57785000
153#define CHIPREV_ID_5719_A0 0x05719000 155#define CHIPREV_ID_5719_A0 0x05719000
154#define CHIPREV_ID_5720_A0 0x05720000 156#define CHIPREV_ID_5720_A0 0x05720000