diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2009-11-28 00:35:09 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-11-29 02:58:52 -0500 |
commit | fb45f2c154be470ad950bcf16f3662ec0ca48695 (patch) | |
tree | ad737364a12db15a08ba3f8e5f2152a6dabd4dce /drivers/net/sfc/workarounds.h | |
parent | b895d73e9836fccc402e48a8f63e6805d2edc87b (diff) |
sfc: Limit some hardware workarounds to Falcon
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sfc/workarounds.h')
-rw-r--r-- | drivers/net/sfc/workarounds.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/sfc/workarounds.h b/drivers/net/sfc/workarounds.h index 325029949488..84e579e40b88 100644 --- a/drivers/net/sfc/workarounds.h +++ b/drivers/net/sfc/workarounds.h | |||
@@ -17,6 +17,7 @@ | |||
17 | 17 | ||
18 | #define EFX_WORKAROUND_ALWAYS(efx) 1 | 18 | #define EFX_WORKAROUND_ALWAYS(efx) 1 |
19 | #define EFX_WORKAROUND_FALCON_A(efx) (falcon_rev(efx) <= FALCON_REV_A1) | 19 | #define EFX_WORKAROUND_FALCON_A(efx) (falcon_rev(efx) <= FALCON_REV_A1) |
20 | #define EFX_WORKAROUND_FALCON_AB(efx) (falcon_rev(efx) <= FALCON_REV_B0) | ||
20 | #define EFX_WORKAROUND_10G(efx) EFX_IS10G(efx) | 21 | #define EFX_WORKAROUND_10G(efx) EFX_IS10G(efx) |
21 | #define EFX_WORKAROUND_SFT9001(efx) ((efx)->phy_type == PHY_TYPE_SFT9001A || \ | 22 | #define EFX_WORKAROUND_SFT9001(efx) ((efx)->phy_type == PHY_TYPE_SFT9001A || \ |
22 | (efx)->phy_type == PHY_TYPE_SFT9001B) | 23 | (efx)->phy_type == PHY_TYPE_SFT9001B) |
@@ -33,11 +34,11 @@ | |||
33 | * or a PCIe error (bug 11028) */ | 34 | * or a PCIe error (bug 11028) */ |
34 | #define EFX_WORKAROUND_10727 EFX_WORKAROUND_ALWAYS | 35 | #define EFX_WORKAROUND_10727 EFX_WORKAROUND_ALWAYS |
35 | /* Transmit flow control may get disabled */ | 36 | /* Transmit flow control may get disabled */ |
36 | #define EFX_WORKAROUND_11482 EFX_WORKAROUND_ALWAYS | 37 | #define EFX_WORKAROUND_11482 EFX_WORKAROUND_FALCON_AB |
37 | /* Flush events can take a very long time to appear */ | 38 | /* Flush events can take a very long time to appear */ |
38 | #define EFX_WORKAROUND_11557 EFX_WORKAROUND_ALWAYS | 39 | #define EFX_WORKAROUND_11557 EFX_WORKAROUND_ALWAYS |
39 | /* Truncated IPv4 packets can confuse the TX packet parser */ | 40 | /* Truncated IPv4 packets can confuse the TX packet parser */ |
40 | #define EFX_WORKAROUND_15592 EFX_WORKAROUND_ALWAYS | 41 | #define EFX_WORKAROUND_15592 EFX_WORKAROUND_FALCON_AB |
41 | 42 | ||
42 | /* Spurious parity errors in TSORT buffers */ | 43 | /* Spurious parity errors in TSORT buffers */ |
43 | #define EFX_WORKAROUND_5129 EFX_WORKAROUND_FALCON_A | 44 | #define EFX_WORKAROUND_5129 EFX_WORKAROUND_FALCON_A |