]> git.neil.brown.name Git - history.git/commitdiff
[TG3]: Chip support update and a power-save bug fix.
authorDavid S. Miller <davem@nuts.davemloft.net>
Sat, 12 Jun 2004 04:22:24 +0000 (21:22 -0700)
committerDavid S. Miller <davem@nuts.davemloft.net>
Sat, 12 Jun 2004 04:22:24 +0000 (21:22 -0700)
1) Add PCI IDs and driver entries for 5789, 5751M and
   5751F chips.  Mark 5751F chips as 10/100 only.
2) Call pci_restore_state() at beginning of tg3_resume() as
   this helps some chips come out of D3 more cleanly.

drivers/net/tg3.c
drivers/pci/pci.ids
include/linux/pci_ids.h

index b5ec0d3129ac31da2e4f2dc9dfa5c90fdb302a8a..e05c7add80defac709ac28bb12b2644507d00495 100644 (file)
@@ -177,6 +177,8 @@ static struct pci_device_id tg3_pci_tbl[] = {
          PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
        { PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5788,
          PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
+       { PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5789,
+         PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
        { PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5901,
          PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
        { PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5901_2,
@@ -195,6 +197,10 @@ static struct pci_device_id tg3_pci_tbl[] = {
          PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
        { PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5750M,
          PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
+       { PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5751M,
+         PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
+       { PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_TIGON3_5751F,
+         PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
        { PCI_VENDOR_ID_SYSKONNECT, PCI_DEVICE_ID_SYSKONNECT_9DXX,
          PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
        { PCI_VENDOR_ID_SYSKONNECT, PCI_DEVICE_ID_SYSKONNECT_9MXX,
@@ -7574,7 +7580,9 @@ static int __devinit tg3_get_invariants(struct tg3 *tp)
             tp->pdev->vendor == PCI_VENDOR_ID_BROADCOM &&
             (tp->pdev->device == PCI_DEVICE_ID_TIGON3_5901 ||
              tp->pdev->device == PCI_DEVICE_ID_TIGON3_5901_2 ||
-             tp->pdev->device == PCI_DEVICE_ID_TIGON3_5705F)))
+             tp->pdev->device == PCI_DEVICE_ID_TIGON3_5705F)) ||
+           (tp->pdev->vendor == PCI_VENDOR_ID_BROADCOM &&
+            tp->pdev->device == PCI_DEVICE_ID_TIGON3_5751F))
                tp->tg3_flags |= TG3_FLAG_10_100_ONLY;
 
        err = tg3_phy_probe(tp);
@@ -8455,6 +8463,8 @@ static int tg3_resume(struct pci_dev *pdev)
        if (!netif_running(dev))
                return 0;
 
+       pci_restore_state(tp->pdev, tp->pci_cfg_state);
+
        err = tg3_set_power_state(tp, 0);
        if (err)
                return err;
index b3f33a1bb7bf6cd23e27c10d0a3b78cebdafab76..6e4965e6616a976c0f5616f9f3d20992ce7e2e73 100644 (file)
        1676  NetXtreme BCM5750 Gigabit Ethernet
        1677  NetXtreme BCM5751 Gigabit Ethernet
        167c  NetXtreme BCM5750M Gigabit Ethernet
+       167d  NetXtreme BCM5751M Gigabit Ethernet
+       167e  NetXtreme BCM5751F Gigabit Ethernet
        1696  NetXtreme BCM5782 Gigabit Ethernet
                103c 12bc  HP d530 CMT (DG746A)
                14e4 000d  NetXtreme BCM5782 1000Base-T
        169c  NetXtreme BCM5788 Gigabit Ethernet
+       169d  NetXtreme BCM5789 Gigabit Ethernet
        16a6  NetXtreme BCM5702X Gigabit Ethernet
                0e11 00bb  NC7760 Gigabit Server Adapter (PCI-X, 10/100/1000-T)
                1028 0126  BCM5702 1000Base-T
index 07d2d12ce4f564d20297595e89851d48ce1d2035..757d43b54faabb34606b737f49893eaa1a82dc86 100644 (file)
 #define PCI_DEVICE_ID_TIGON3_5750      0x1676
 #define PCI_DEVICE_ID_TIGON3_5751      0x1677
 #define PCI_DEVICE_ID_TIGON3_5750M     0x167c
+#define PCI_DEVICE_ID_TIGON3_5751M     0x167d
+#define PCI_DEVICE_ID_TIGON3_5751F     0x167e
 #define PCI_DEVICE_ID_TIGON3_5782      0x1696
 #define PCI_DEVICE_ID_TIGON3_5788      0x169c
+#define PCI_DEVICE_ID_TIGON3_5789      0x169d
 #define PCI_DEVICE_ID_TIGON3_5702X     0x16a6
 #define PCI_DEVICE_ID_TIGON3_5703X     0x16a7
 #define PCI_DEVICE_ID_TIGON3_5704S     0x16a8