e1000e: fix overrun of PHY RAR array
authorDavid Ertman <davidx.m.ertman@intel.com>
Thu, 5 Sep 2013 04:24:25 +0000 (04:24 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Fri, 13 Sep 2013 17:19:56 +0000 (10:19 -0700)
commitc3a0dce35af02846bdaa1df437493e2fd547ec2f
treeb4d4ebcb8ad67e4b002318eb2cbb109fbffc69a8
parent138953bb6a27fccc59eecd303578260c8c7409d2
e1000e: fix overrun of PHY RAR array

When copying the MAC RAR registers to PHY there is an error in the
calculation of the rar_entry_count, which causes a write of unknown/
undefined register space in the MAC to unknown/undefined register space in
the PHY.

This patch fixes the overrun with writing to the PHY RAR and also fixes the
ethtool offline register tests so that the correctly addressed registers
have the appropriate bitmasks for R/W and RO bits for affected parts.

Shawn Rader gets credit for finding and fixing the register overrun.

Signed-off-by: Dave Ertman <davidx.m.ertman@intel.com>
CC: Shawn Rader <shawn.t.rader@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/e1000e/ethtool.c
drivers/net/ethernet/intel/e1000e/ich8lan.c
drivers/net/ethernet/intel/e1000e/ich8lan.h