[PATCH 1/1][SRU][F][H][I][OEM-5.10][OEM-5.13] UBUNTU: SAUCE: e1000e: Do not take care about recovery NVM checksum
AceLan Kao
acelan.kao at canonical.com
Wed Jul 21 10:37:31 UTC 2021
From: Sasha Neftin <sasha.neftin at intel.com>
BugLink: https://bugs.launchpad.net/bugs/1936998
On new platforms, the NVM is read-only. Attempting to update the NVM
is causing a lockup to occur. Do not attempt to write to the NVM
on platforms where it's not supported.
Emit an error message when the NVM checksum is invalid.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=213667
Suggested-by: Dima Ruinskiy <dima.ruinskiy at intel.com>
Suggested-by: Vitaly Lifshits <vitaly.lifshits at intel.com>
Signed-off-by: Sasha Neftin <sasha.neftin at intel.com>
(cherry picked from
https://patchwork.ozlabs.org/project/intel-wired-lan/patch/20210718041031.3619696-1-sasha.neftin@intel.com/)
Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao at canonical.com>
---
drivers/net/ethernet/intel/e1000e/ich8lan.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.c b/drivers/net/ethernet/intel/e1000e/ich8lan.c
index 16cd6c7cd8cc8..dc2a570f77425 100644
--- a/drivers/net/ethernet/intel/e1000e/ich8lan.c
+++ b/drivers/net/ethernet/intel/e1000e/ich8lan.c
@@ -4125,13 +4125,17 @@ static s32 e1000_validate_nvm_checksum_ich8lan(struct e1000_hw *hw)
return ret_val;
if (!(data & valid_csum_mask)) {
- data |= valid_csum_mask;
- ret_val = e1000_write_nvm(hw, word, 1, &data);
- if (ret_val)
- return ret_val;
- ret_val = e1000e_update_nvm_checksum(hw);
- if (ret_val)
- return ret_val;
+ e_dbg("NVM Checksum Invalid\n");
+
+ if (hw->mac.type < e1000_pch_cnp) {
+ data |= valid_csum_mask;
+ ret_val = e1000_write_nvm(hw, word, 1, &data);
+ if (ret_val)
+ return ret_val;
+ ret_val = e1000e_update_nvm_checksum(hw);
+ if (ret_val)
+ return ret_val;
+ }
}
return e1000e_validate_nvm_checksum_generic(hw);
--
2.25.1
More information about the kernel-team
mailing list