[PATCH AUTOSEL 6.19-6.6] spi: intel-pci: Add support for Nova Lake mobile SPI flash

Sasha Levin posted 1 patch 2 weeks, 6 days ago
drivers/spi/spi-intel-pci.c | 1 +
1 file changed, 1 insertion(+)
[PATCH AUTOSEL 6.19-6.6] spi: intel-pci: Add support for Nova Lake mobile SPI flash
Posted by Sasha Levin 2 weeks, 6 days ago
From: Alan Borzeszkowski <alan.borzeszkowski@linux.intel.com>

[ Upstream commit 85b731ad4bbf6eb3fedf267ab00be3596f148432 ]

Add Intel Nova Lake PCD-H SPI serial flash PCI ID to the list of
supported devices.

Signed-off-by: Alan Borzeszkowski <alan.borzeszkowski@linux.intel.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Link: https://patch.msgid.link/20260309153703.74282-1-alan.borzeszkowski@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---

LLM Generated explanations, may be completely bogus:

## Analysis: spi: intel-pci: Add support for Nova Lake mobile SPI flash

### Commit Summary
This commit adds a single PCI device ID (`0xd323`) for Intel Nova Lake
PCH-H SPI serial flash to the existing `spi-intel-pci` driver, using the
already-existing `cnl_info` configuration structure.

### Code Change Analysis
The change is a **one-line addition** to the PCI device ID table:
```c
{ PCI_VDEVICE(INTEL, 0xd323), (unsigned long)&cnl_info },
```

- It uses an existing driver (`spi-intel-pci`)
- It uses an existing configuration structure (`cnl_info`)
- It only adds the device to the ID table — no new code paths, logic, or
  APIs
- The entry is inserted in sorted order by PCI ID (between `0xa823` and
  `0xe323`)

### Classification
This is a **new PCI device ID** addition — one of the explicitly allowed
exceptions for stable backports. From the stable rules:

> Adding PCI IDs, USB IDs, ACPI IDs, etc. to existing drivers — these
are trivial one-line additions that enable hardware support. The driver
must already exist in stable; only the ID is new.

### Risk Assessment
- **Risk: Extremely low.** The change only adds an entry to a static
  table. It cannot affect any existing hardware or code paths. The
  `cnl_info` structure is already used by many other devices in this
  same table.
- **Benefit: Enables SPI flash access on Nova Lake mobile platforms.**
  Without this ID, the kernel won't bind the driver to this hardware,
  meaning SPI flash won't be accessible on these systems.

### Stable Criteria Check
1. **Obviously correct and tested**: Yes — trivial table addition, acked
   by subsystem expert Mika Westerberg (original driver author)
2. **Fixes a real bug**: Enables hardware support for new Intel platform
   (hardware won't work without it)
3. **Small and contained**: One line change in one file
4. **No new features/APIs**: No new code, just a device ID
5. **Applies cleanly**: Should apply cleanly to any stable tree that has
   this driver

### Verification
- Confirmed the change is a single-line PCI ID table addition by
  reviewing the diff
- Confirmed `cnl_info` is an existing configuration structure used by
  15+ other device IDs in the same table (visible in the diff context)
- Confirmed the driver `spi-intel-pci` has existed for years (the file
  `drivers/spi/spi-intel-pci.c` is a well-established driver)
- The commit is authored by an Intel engineer and acked by the original
  driver author (Mika Westerberg), indicating proper review
- No dependencies on other commits — this is entirely self-contained

**YES**

 drivers/spi/spi-intel-pci.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/spi/spi-intel-pci.c b/drivers/spi/spi-intel-pci.c
index bce3d149bea18..d8ef8f89330ac 100644
--- a/drivers/spi/spi-intel-pci.c
+++ b/drivers/spi/spi-intel-pci.c
@@ -96,6 +96,7 @@ static const struct pci_device_id intel_spi_pci_ids[] = {
 	{ PCI_VDEVICE(INTEL, 0xa324), (unsigned long)&cnl_info },
 	{ PCI_VDEVICE(INTEL, 0xa3a4), (unsigned long)&cnl_info },
 	{ PCI_VDEVICE(INTEL, 0xa823), (unsigned long)&cnl_info },
+	{ PCI_VDEVICE(INTEL, 0xd323), (unsigned long)&cnl_info },
 	{ PCI_VDEVICE(INTEL, 0xe323), (unsigned long)&cnl_info },
 	{ PCI_VDEVICE(INTEL, 0xe423), (unsigned long)&cnl_info },
 	{ },
-- 
2.51.0