On 4/24/2025 8:29 PM, Jacek Kowalski wrote:
Hi,
Because it is impossible to determine whether the NVM write would
finish
correctly or hang (see
https://bugzilla.kernel.org/show_bug.cgi?id=213667)
it makes sense to skip the validation completely under these
conditions.
It is not completely accurate. All the NVMs starting from Tiger Lake
are locked for writes, so NVM writes will always result in a failure.
Check my message in a thread of an earlier patch:
Message-ID: <[email protected]>
https://lists.osuosl.org/pipermail/intel-wired-lan/Week-of-Mon-20250407/047551.html
On my laptop NVM write operation *does not fail* (nor hangs), driver
loads and ethtool shows corrected checksum.
This lasts only until module reload (rmmod/insmod) or reboot.
I guess only shadow RAM is updated (or something like that) and not the
non-volatile memory, but the operation itself does not error out.
Yeah, probably this is what happens.
It might also be because I've disabled Secure Boot...
Anyway, I think that the commit message should be precise.
How about this?
Starting from Tiger Lake, LAN NVM is locked for writes by SW, so the
driver cannot perform checksum validation and correction. This means
that all NVM images must leave the factory with correct checksum and
checksum valid bit set. Since Tiger Lake devices were the first to have
this lock, some systems in the field did not meet this requirement.
Therefore, for these transitional devices we skip checksum update and
verification, if the valid bit is not set.