e1000e: Fix ethtool offline tests for 82579 parts

Changes to the rar_entry_count value require a change to the indexing
used to access the SHRA[H|L] registers when testing them with
'ethtool -t <iface> offline'

Signed-off-by: Dave Ertman <davidx.m.ertman@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
David Ertman 2014-03-05 07:54:19 +00:00 committed by Jeff Kirsher
parent 5bb7317608
commit ad40064e88
1 changed files with 8 additions and 2 deletions

View File

@ -917,15 +917,21 @@ static int e1000_reg_test(struct e1000_adapter *adapter, u64 *data)
} }
if (mac->type == e1000_pch2lan) { if (mac->type == e1000_pch2lan) {
/* SHRAH[0,1,2] different than previous */ /* SHRAH[0,1,2] different than previous */
if (i == 7) if (i == 1)
mask &= 0xFFF4FFFF; mask &= 0xFFF4FFFF;
/* SHRAH[3] different than SHRAH[0,1,2] */ /* SHRAH[3] different than SHRAH[0,1,2] */
if (i == 10) if (i == 4)
mask |= (1 << 30); mask |= (1 << 30);
/* RAR[1-6] owned by management engine - skipping */
if (i > 0)
i += 6;
} }
REG_PATTERN_TEST_ARRAY(E1000_RA, ((i << 1) + 1), mask, REG_PATTERN_TEST_ARRAY(E1000_RA, ((i << 1) + 1), mask,
0xFFFFFFFF); 0xFFFFFFFF);
/* reset index to actual value */
if ((mac->type == e1000_pch2lan) && (i > 6))
i -= 6;
} }
for (i = 0; i < mac->mta_reg_count; i++) for (i = 0; i < mac->mta_reg_count; i++)