Commit aba49f24 authored by Matt Carlson's avatar Matt Carlson Committed by David S. Miller

tg3: Disable MAC loopback test for CPMU devices

On CPMU devices, the MAC loopback test does not test any important paths
the phy loopback test doesn't also test.  The phy loopback test is the
more comprehensive test.  This patch disables the MAC loopback test for
these devices.
Signed-off-by: default avatarMatt Carlson <mcarlson@broadcom.com>
Reviewed-by: default avatarMichael Chan <mchan@broadcom.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 49692ca1
...@@ -10840,9 +10840,11 @@ static int tg3_run_loopback(struct tg3 *tp, int loopback_mode) ...@@ -10840,9 +10840,11 @@ static int tg3_run_loopback(struct tg3 *tp, int loopback_mode)
if (loopback_mode == TG3_MAC_LOOPBACK) { if (loopback_mode == TG3_MAC_LOOPBACK) {
/* HW errata - mac loopback fails in some cases on 5780. /* HW errata - mac loopback fails in some cases on 5780.
* Normal traffic and PHY loopback are not affected by * Normal traffic and PHY loopback are not affected by
* errata. * errata. Also, the MAC loopback test is deprecated for
* all newer ASIC revisions.
*/ */
if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5780) if (GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5780 ||
(tp->tg3_flags & TG3_FLAG_CPMU_PRESENT))
return 0; return 0;
mac_mode = tp->mac_mode & mac_mode = tp->mac_mode &
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment