* [PATCH AUTOSEL 6.17-6.1] spi: intel-pci: Add support for Intel Wildcat Lake SPI serial flash @ 2025-10-28 12:48 Sasha Levin 2025-10-28 12:48 ` [PATCH AUTOSEL 6.17-6.1] spi: intel-pci: Add support for Arrow Lake-H " Sasha Levin 0 siblings, 1 reply; 2+ messages in thread From: Sasha Levin @ 2025-10-28 12:48 UTC (permalink / raw) To: patches, stable; +Cc: Mika Westerberg, Mark Brown, Sasha Levin, linux-spi From: Mika Westerberg <mika.westerberg@linux.intel.com> [ Upstream commit f7e37affbc9085f2b77ccb6596521a44eabf7505 ] Add Intel Wildcat Lake SPI serial flash PCI ID to the list of supported devices. Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com> Link: https://patch.msgid.link/20251020145415.3377022-4-mika.westerberg@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: ## BACKPORT ANALYSIS COMPLETE **Backport Status: YES** --- ## DETAILED ANALYSIS ### 1. COMMIT CHARACTERIZATION **Type**: Hardware enablement (PCI device ID addition) **Code Changes**: - Single line addition to `drivers/spi/spi-intel-pci.c` - Adds PCI device ID `0x4d23` (Intel Wildcat Lake SPI serial flash) - Maps to existing `cnl_info` configuration structure - No behavioral changes to existing code paths ### 2. SEMANTIC CODE ANALYSIS FINDINGS #### Tools Used: - **Read**: Examined the complete file structure (drivers/spi/spi-intel- pci.c:68-99) - **Grep**: Located PCI device table usage and MODULE_DEVICE_TABLE macro - **Git analysis**: Reviewed commit history and backport precedents #### Impact Scope Analysis: - **Direct impact**: Only affects systems with PCI ID 0x4d23 (Wildcat Lake hardware) - **Caller analysis**: The PCI device table is used by the kernel's PCI subsystem for automatic device-driver matching - **Dependency analysis**: Uses `cnl_info` structure (drivers/spi/spi- intel-pci.c:38-41), which has existed since 2022 - **Risk assessment**: Zero risk to existing hardware - new entry only triggers on matching PCI ID ### 3. BACKPORT PRECEDENT (Strong Evidence) I found multiple similar commits that **WERE backported** to stable trees: **Example 1 - Lunar Lake-M** (commit ec33549be99fe): ``` commit ec33549be99fe25c6927c8b3d6ed13918b27656e Author: Mika Westerberg <mika.westerberg@linux.intel.com> Commit: Sasha Levin <sashal@kernel.org> [STABLE MAINTAINER] spi: intel-pci: Add support for Lunar Lake-M SPI serial flash [ Upstream commit 8f44e3808200c1434c26ef459722f88f48b306df ] ``` **Example 2 - Granite Rapids** (commit 60446b5e74865): ``` commit 60446b5e74865acff1af5f2d89d99551c8e6e2c1 Author: Mika Westerberg <mika.westerberg@linux.intel.com> Commit: Greg Kroah-Hartman <gregkh@linuxfoundation.org> [STABLE MAINTAINER] spi: intel-pci: Add support for Granite Rapids SPI serial flash [ Upstream commit 9855d60cfc720ff32355484c119acafd3c4dc806 ] ``` **Key Finding**: Both commits were backported to stable trees by stable maintainers (Sasha Levin, Greg Kroah-Hartman) **despite having NO explicit stable tags** in the original commits. ### 4. STABLE TREE COMPLIANCE **Positive Factors**: - ✅ Fixes a real user problem (Wildcat Lake users cannot access SPI flash on stable kernels) - ✅ Extremely low risk (single line, static table entry) - ✅ No architectural changes - ✅ No dependencies on unreleased features - ✅ Follows established backporting pattern for PCI ID additions - ✅ "Obviously correct" - uses tested configuration from 20+ other Intel platforms **Considerations**: - ⚠️ Technically a "new feature" (new hardware support) - ✅ However, PCI ID additions are a **special exception** routinely accepted by stable maintainers - ✅ Hardware enablement is considered "fixing" missing support for existing hardware ### 5. DEPENDENCY VERIFICATION - **cnl_info structure**: Present since 2022, exists in all stable kernels that would receive this backport - **PCI_VDEVICE macro**: Standard kernel infrastructure - **intel_spi_probe()**: Core function, no recent changes that would conflict - **Clean backport**: No conflicts expected with any stable kernel version ### 6. RISK ANALYSIS **Regression Risk**: **MINIMAL** - Only triggered when PCI ID 0x4d23 is detected - No effect on systems without Wildcat Lake hardware - Uses well-tested code path (cnl_info shared with 20+ other platforms) - No user-space API changes **Testing Coverage**: - Same code path used by numerous Intel platforms (Ice Lake, Tiger Lake, Alder Lake, etc.) - Configuration structure (cnl_info) battle-tested across multiple generations ### 7. COMMIT MESSAGE ANALYSIS The commit message is: - ✅ Clear and descriptive - ✅ Identifies specific hardware (Intel Wildcat Lake) - ✅ Consistent with previous similar commits - ❌ No "Fixes:" tag (not applicable - this is new hardware support) - ❌ No "Cc: stable@vger.kernel.org" tag (but precedent shows this doesn't prevent backporting) --- ## RECOMMENDATION **YES - This commit SHOULD be backported to stable kernel trees** ### Rationale: 1. **Strong precedent**: Multiple similar PCI ID additions for Intel platforms (Lunar Lake, Granite Rapids, Arrow Lake) have been backported to stable trees by stable maintainers 2. **User benefit**: Enables critical SPI flash functionality for Wildcat Lake hardware owners running stable kernels 3. **Minimal risk**: Single-line change to static table with no impact on existing hardware 4. **Well-established pattern**: PCI ID additions for hardware enablement are routinely accepted for stable backports as they "fix" missing hardware support 5. **Clean backport**: No dependencies or conflicts expected ### Target Stable Trees: - All currently maintained stable kernels (6.17.x, 6.16.x, 6.15.x, etc.) - The commit is from v6.18-rc3, so it would benefit users on any stable kernel before 6.18 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 4b63cb98df9cc..4bb158a23349e 100644 --- a/drivers/spi/spi-intel-pci.c +++ b/drivers/spi/spi-intel-pci.c @@ -75,6 +75,7 @@ static const struct pci_device_id intel_spi_pci_ids[] = { { PCI_VDEVICE(INTEL, 0x38a4), (unsigned long)&bxt_info }, { PCI_VDEVICE(INTEL, 0x43a4), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x4b24), (unsigned long)&bxt_info }, + { PCI_VDEVICE(INTEL, 0x4d23), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x4da4), (unsigned long)&bxt_info }, { PCI_VDEVICE(INTEL, 0x51a4), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x54a4), (unsigned long)&cnl_info }, -- 2.51.0 ^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH AUTOSEL 6.17-6.1] spi: intel-pci: Add support for Arrow Lake-H SPI serial flash 2025-10-28 12:48 [PATCH AUTOSEL 6.17-6.1] spi: intel-pci: Add support for Intel Wildcat Lake SPI serial flash Sasha Levin @ 2025-10-28 12:48 ` Sasha Levin 0 siblings, 0 replies; 2+ messages in thread From: Sasha Levin @ 2025-10-28 12:48 UTC (permalink / raw) To: patches, stable; +Cc: Mika Westerberg, Mark Brown, Sasha Levin, linux-spi From: Mika Westerberg <mika.westerberg@linux.intel.com> [ Upstream commit bc25c6e0a4880b5ad70c31fe1466f30c9e4c8f52 ] Add Intel Arrow Lake-H PCI ID to the driver list of supported devices. This is the same controller found in previous generations. Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com> Link: https://patch.msgid.link/20251020145415.3377022-3-mika.westerberg@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: Based on my comprehensive analysis of both the commit and the kernel repository context, here is my assessment: ## **Backport Status: YES** --- ## **Analysis Details** ### **1. Code Changes Analysis** The commit adds a single line to `drivers/spi/spi-intel-pci.c`: ```c { PCI_VDEVICE(INTEL, 0x7723), (unsigned long)&cnl_info }, ``` This adds PCI device ID `0x7723` (Intel Arrow Lake-H SPI controller) to the supported devices table, using the existing `cnl_info` board configuration that's already proven and tested on numerous other Intel platforms. **Change statistics:** 1 file changed, 1 insertion (+) ### **2. Stable Kernel Rules Compliance** I examined `/home/sasha/linux/Documentation/process/stable-kernel- rules.rst` and found **explicit authorization** for this type of commit: **Line 15 states:** *"It must either fix a real bug that bothers people or just add a device ID."* This commit satisfies the stable tree requirements: - ✅ **Adds a device ID** (explicitly allowed per line 15) - ✅ **Already in mainline** (commit bc25c6e0a4880) - ✅ **Size: 1 line** (well under the 100-line limit) - ✅ **Obviously correct** (simple table entry addition) - ✅ **Enables hardware support** for Arrow Lake-H users ### **3. Historical Precedent - Similar Commits Backported** I verified that similar PCI ID additions to this driver have been **consistently backported** to stable trees: **Evidence from repository analysis:** ```bash # Lunar Lake-M commit (8f44e3808200c) Backported to: stable/linux-6.8.y, 6.10.y, 6.11.y, 6.12.y, 6.13.y, 6.14.y, 6.15.y, 6.16.y, 6.17.y # Arrow Lake non-H commit (8afe3c7fcaf72) Backported to: stable/linux-6.8.y, 6.10.y, 6.11.y, 6.12.y, 6.13.y, 6.14.y, 6.15.y, 6.16.y, 6.17.y ``` **Pattern:** Device ID additions for Intel SPI controllers are routinely backported, even without explicit "Cc: stable" tags, because they're explicitly permitted by stable rules. ### **4. Cross-Subsystem Context** Arrow Lake-H is a **real, shipping platform**. I found multiple Arrow Lake-H device ID additions across the kernel, many already backported: - `i2c: i801: Add support for Intel Arrow Lake-H` (f0eda4ddb2146) → **backported to 6.11.y - 6.14.y** - `usb: dwc3: pci: add support for the Intel Arrow Lake-H` (2fff7bb8f1c26) → **backported to 6.7.y** - `mfd: intel-lpss: Add Intel Arrow Lake-H LPSS PCI IDs` (1523d8ea99d28, 6112597f5ba84) - `pinctrl: meteorlake: Add Arrow Lake-H/U ACPI ID` (080c3068715df, a366e46da10d7) This demonstrates that Arrow Lake-H support is being actively backported across subsystems. ### **5. Risk Assessment** **Risk: MINIMAL** - **No code behavior changes** - only adds a PCI ID entry - **Uses existing, proven code path** - references `cnl_info` used by 20+ other device IDs - **Isolated impact** - only affects systems with Arrow Lake-H hardware (PCI ID 0x7723) - **No dependencies** - standalone change requiring no prerequisites - **No architectural changes** - no API modifications, no data structure changes ### **6. User Impact** **Without this patch:** Users with Arrow Lake-H systems cannot access their SPI flash controller, preventing firmware access and critical hardware functionality. **With this patch:** Arrow Lake-H hardware works identically to other supported Intel platforms (Lunar Lake, Meteor Lake, Granite Rapids, etc.) ### **7. Author & Maintainer Context** - **Author:** Mika Westerberg (original driver author and maintainer) - **Commit history:** 16 out of 23 recent commits to this file are by Mika, primarily adding new Intel platform PCI IDs - **Pattern:** Consistent, incremental hardware enablement for new Intel platforms --- ## **Conclusion** This commit is a **textbook example** of what should be backported to stable trees: 1. Explicitly permitted by stable kernel rules (device ID addition) 2. Minimal size (1 line) and zero risk 3. Consistent with historical backporting patterns 4. Enables real hardware that users have 5. No behavior changes to existing code 6. Part of broader Arrow Lake-H enablement across kernel subsystems **Recommendation:** Backport to all active stable trees (6.12.y, 6.11.y, 6.10.y, etc.) following the same pattern as previous Intel SPI controller device additions. 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 4bb158a23349e..7765fb27c37c3 100644 --- a/drivers/spi/spi-intel-pci.c +++ b/drivers/spi/spi-intel-pci.c @@ -80,6 +80,7 @@ static const struct pci_device_id intel_spi_pci_ids[] = { { PCI_VDEVICE(INTEL, 0x51a4), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x54a4), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x5794), (unsigned long)&cnl_info }, + { PCI_VDEVICE(INTEL, 0x7723), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x7a24), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x7aa4), (unsigned long)&cnl_info }, { PCI_VDEVICE(INTEL, 0x7e23), (unsigned long)&cnl_info }, -- 2.51.0 ^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-10-28 12:48 UTC | newest] Thread overview: 2+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-10-28 12:48 [PATCH AUTOSEL 6.17-6.1] spi: intel-pci: Add support for Intel Wildcat Lake SPI serial flash Sasha Levin 2025-10-28 12:48 ` [PATCH AUTOSEL 6.17-6.1] spi: intel-pci: Add support for Arrow Lake-H " Sasha Levin
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).