netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/2] e1000e: disregard NVM checksums for known-bad cases on Tiger Lake
@ 2025-06-30  8:33 Jacek Kowalski
  2025-06-30  8:33 ` [PATCH v4 1/2] e1000e: disregard NVM checksum on tgp when valid checksum bit is not set Jacek Kowalski
  2025-06-30  8:35 ` [PATCH v4 2/2] e1000e: ignore uninitialized checksum word on tgp Jacek Kowalski
  0 siblings, 2 replies; 7+ messages in thread
From: Jacek Kowalski @ 2025-06-30  8:33 UTC (permalink / raw)
  To: Tony Nguyen, Przemek Kitszel, Andrew Lunn, David S. Miller,
	Eric Dumazet, Jakub Kicinski, Paolo Abeni, Simon Horman
  Cc: intel-wired-lan, netdev

As described by Vitaly Lifshits:

> 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.


There are two issues we have found so far on some Tiger Lake systems:

1. Checksum valid bit unset in NVM

Some Dell laptops, i.e. Latitude 5420, have a valid bit unset and
incorrect checksum over NVM contents.

2. Checksum word in NVM is uninitialized (0xFFFF)

Other Dell system, Optiplex 5090 Micro, has a valid bit set while
a checksum word contains 0xFFFF ("empty"/uninitialized value).


Both issues result in the driver refusing to work with error:

> e1000e 0000:XX:XX.X: The NVM Checksum Is Not Valid

The network card is rendered unusable.


Patches work around those problems by ignoring NVM checksum when those
exact error conditions are detected on TGP-based systems.


v1 -> v2: work around issue #2
v2 -> v3: fix wrong comparison in workaround for #2, drop u16 cast
v3 -> v4: rename constant, reformat files, update commit description

Jacek Kowalski (2):
  e1000e: disregard NVM checksum on tgp when valid checksum bit is not
    set
  e1000e: ignore uninitialized checksum word on tgp

 drivers/net/ethernet/intel/e1000e/defines.h | 3 +++
 drivers/net/ethernet/intel/e1000e/ich8lan.c | 2 ++
 drivers/net/ethernet/intel/e1000e/nvm.c     | 6 ++++++
 3 files changed, 11 insertions(+)

-- 
2.47.2


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2025-07-20  7:12 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-30  8:33 [PATCH v4 0/2] e1000e: disregard NVM checksums for known-bad cases on Tiger Lake Jacek Kowalski
2025-06-30  8:33 ` [PATCH v4 1/2] e1000e: disregard NVM checksum on tgp when valid checksum bit is not set Jacek Kowalski
2025-07-13 11:55   ` [Intel-wired-lan] " Mor Bar-Gabay
2025-06-30  8:35 ` [PATCH v4 2/2] e1000e: ignore uninitialized checksum word on tgp Jacek Kowalski
2025-06-30 17:00   ` Simon Horman
2025-07-01  8:58     ` [Intel-wired-lan] " Lifshits, Vitaly
2025-07-20  7:12   ` Mor Bar-Gabay

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).