diff options
author | Sasha Neftin <sasha.neftin@intel.com> | 2019-07-24 10:05:46 +0300 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2019-09-09 20:08:38 +0300 |
commit | 9b924edd8f23b8f3c14a2c9720ddb27bdfaaecd4 (patch) | |
tree | fea9a72068753a57f03b3d975f67c432afd9c496 /drivers/net/ethernet/intel | |
parent | 0ea7e88d3f3d38bc79874cd1054915233ed85f52 (diff) | |
download | linux-9b924edd8f23b8f3c14a2c9720ddb27bdfaaecd4.tar.xz |
igc: Add NVM checksum validation
Add NVM checksum validation during probe functionality.
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel')
-rw-r--r-- | drivers/net/ethernet/intel/igc/igc_main.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c b/drivers/net/ethernet/intel/igc/igc_main.c index 251552855c40..965d1c939f0f 100644 --- a/drivers/net/ethernet/intel/igc/igc_main.c +++ b/drivers/net/ethernet/intel/igc/igc_main.c @@ -4133,6 +4133,15 @@ static int igc_probe(struct pci_dev *pdev, */ hw->mac.ops.reset_hw(hw); + if (igc_get_flash_presence_i225(hw)) { + if (hw->nvm.ops.validate(hw) < 0) { + dev_err(&pdev->dev, + "The NVM Checksum Is Not Valid\n"); + err = -EIO; + goto err_eeprom; + } + } + if (eth_platform_get_mac_address(&pdev->dev, hw->mac.addr)) { /* copy the MAC address out of the NVM */ if (hw->mac.ops.read_mac_addr(hw)) |