summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Carlson <mcarlson@broadcom.com>2009-04-20 08:58:27 +0200
committerDavid S. Miller <davem@davemloft.net>2009-04-21 10:41:02 +0200
commit9cf74ebb634fe79587cf9a1d5ff971391dd12e1b (patch)
treeaac181b596720fd60a68732f29514503c18de660
parenttg3: Allow 5761 WOL and LED fixes to 5761S too (diff)
downloadlinux-9cf74ebb634fe79587cf9a1d5ff971391dd12e1b.tar.xz
linux-9cf74ebb634fe79587cf9a1d5ff971391dd12e1b.zip
tg3: Limit CLKREQ fix to A[01] of 57780 asic rev
This patch restricts the CLKREQ bugfix to the A0 and A1 revisions of 57780 ASIC rev chips. Signed-off-by: Matt Carlson <mcarlson@broadcom.com> Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/tg3.c3
-rw-r--r--drivers/net/tg3.h2
2 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c
index c5c3d2853144..0501fb48a004 100644
--- a/drivers/net/tg3.c
+++ b/drivers/net/tg3.c
@@ -11992,7 +11992,8 @@ static int __devinit tg3_get_invariants(struct tg3 *tp)
tp->tg3_flags2 &= ~TG3_FLG2_HW_TSO_2;
if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5784 ||
GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5761 ||
- GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_57780)
+ tp->pci_chip_rev_id == CHIPREV_ID_57780_A0 ||
+ tp->pci_chip_rev_id == CHIPREV_ID_57780_A1)
tp->tg3_flags3 |= TG3_FLG3_CLKREQ_BUG;
}
} else if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5785) {
diff --git a/drivers/net/tg3.h b/drivers/net/tg3.h
index f1016cb1a89a..b3347c41a1a3 100644
--- a/drivers/net/tg3.h
+++ b/drivers/net/tg3.h
@@ -95,6 +95,8 @@
#define CHIPREV_ID_5752_A1 0x6001
#define CHIPREV_ID_5714_A2 0x9002
#define CHIPREV_ID_5906_A1 0xc001
+#define CHIPREV_ID_57780_A0 0x57780000
+#define CHIPREV_ID_57780_A1 0x57780001
#define GET_ASIC_REV(CHIP_REV_ID) ((CHIP_REV_ID) >> 12)
#define ASIC_REV_5700 0x07
#define ASIC_REV_5701 0x00