diff options
author | Matt Carlson <mcarlson@broadcom.com> | 2010-02-12 09:47:09 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-02-12 20:05:53 -0500 |
commit | 0339e4e3effeae71e2b19c6340ef9672fb7a2cb3 (patch) | |
tree | d54025d2a5ba9e9dd76e8cb736b673acafbf5b4b /drivers/net/tg3.c | |
parent | 6b10c1653e425e30cff7f41d0e6f9743bfa9810f (diff) |
tg3: Turn off multiple DMA reads for 5717
The 5717's DMA read engine has a bug when initiating multiple DMA reads
across the PCIe bus. This patch disables the feature.
Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Reviewed-by: Michael Chan <mchan@broadcom.com>
Reviewed-by: Benjamin Li <benli@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/tg3.c')
-rw-r--r-- | drivers/net/tg3.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index 2c5e1b7e1088..673ea314aa18 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c | |||
@@ -7915,6 +7915,9 @@ static int tg3_reset_hw(struct tg3 *tp, int reset_phy) | |||
7915 | RDMAC_MODE_FIFOURUN_ENAB | RDMAC_MODE_FIFOOREAD_ENAB | | 7915 | RDMAC_MODE_FIFOURUN_ENAB | RDMAC_MODE_FIFOOREAD_ENAB | |
7916 | RDMAC_MODE_LNGREAD_ENAB); | 7916 | RDMAC_MODE_LNGREAD_ENAB); |
7917 | 7917 | ||
7918 | if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5717) | ||
7919 | rdmac_mode |= RDMAC_MODE_MULT_DMA_RD_DIS; | ||
7920 | |||
7918 | if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5784 || | 7921 | if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5784 || |
7919 | GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5785 || | 7922 | GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5785 || |
7920 | GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_57780) | 7923 | GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_57780) |