aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/e1000e/ethtool.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/e1000e/ethtool.c')
-rw-r--r--drivers/net/e1000e/ethtool.c22
1 files changed, 18 insertions, 4 deletions
diff --git a/drivers/net/e1000e/ethtool.c b/drivers/net/e1000e/ethtool.c
index e21c9e0f3738..a89498dcb636 100644
--- a/drivers/net/e1000e/ethtool.c
+++ b/drivers/net/e1000e/ethtool.c
@@ -781,6 +781,7 @@ static int e1000_reg_test(struct e1000_adapter *adapter, u64 *data)
781 case e1000_82573: 781 case e1000_82573:
782 case e1000_ich8lan: 782 case e1000_ich8lan:
783 case e1000_ich9lan: 783 case e1000_ich9lan:
784 case e1000_ich10lan:
784 toggle = 0x7FFFF033; 785 toggle = 0x7FFFF033;
785 break; 786 break;
786 default: 787 default:
@@ -833,7 +834,9 @@ static int e1000_reg_test(struct e1000_adapter *adapter, u64 *data)
833 REG_PATTERN_TEST(E1000_TIDV, 0x0000FFFF, 0x0000FFFF); 834 REG_PATTERN_TEST(E1000_TIDV, 0x0000FFFF, 0x0000FFFF);
834 for (i = 0; i < mac->rar_entry_count; i++) 835 for (i = 0; i < mac->rar_entry_count; i++)
835 REG_PATTERN_TEST_ARRAY(E1000_RA, ((i << 1) + 1), 836 REG_PATTERN_TEST_ARRAY(E1000_RA, ((i << 1) + 1),
836 0x8003FFFF, 0xFFFFFFFF); 837 ((mac->type == e1000_ich10lan) ?
838 0x8007FFFF : 0x8003FFFF),
839 0xFFFFFFFF);
837 840
838 for (i = 0; i < mac->mta_reg_count; i++) 841 for (i = 0; i < mac->mta_reg_count; i++)
839 REG_PATTERN_TEST_ARRAY(E1000_MTA, i, 0xFFFFFFFF, 0xFFFFFFFF); 842 REG_PATTERN_TEST_ARRAY(E1000_MTA, i, 0xFFFFFFFF, 0xFFFFFFFF);
@@ -905,12 +908,23 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
905 908
906 /* Test each interrupt */ 909 /* Test each interrupt */
907 for (i = 0; i < 10; i++) { 910 for (i = 0; i < 10; i++) {
908 if ((adapter->flags & FLAG_IS_ICH) && (i == 8))
909 continue;
910
911 /* Interrupt to test */ 911 /* Interrupt to test */
912 mask = 1 << i; 912 mask = 1 << i;
913 913
914 if (adapter->flags & FLAG_IS_ICH) {
915 switch (mask) {
916 case E1000_ICR_RXSEQ:
917 continue;
918 case 0x00000100:
919 if (adapter->hw.mac.type == e1000_ich8lan ||
920 adapter->hw.mac.type == e1000_ich9lan)
921 continue;
922 break;
923 default:
924 break;
925 }
926 }
927
914 if (!shared_int) { 928 if (!shared_int) {
915 /* 929 /*
916 * Disable the interrupt to be reported in 930 * Disable the interrupt to be reported in