From: Sasha Levin <sashal@kernel.org>
To: patches@lists.linux.dev, stable@vger.kernel.org
Cc: Qiuxu Zhuo <qiuxu.zhuo@intel.com>,
Tony Luck <tony.luck@intel.com>,
Jianfeng Gao <jianfeng.gao@intel.com>,
Sasha Levin <sashal@kernel.org>,
bp@alien8.de, linux-edac@vger.kernel.org
Subject: [PATCH AUTOSEL 6.19-6.18] EDAC/igen6: Add two Intel Amston Lake SoCs support
Date: Fri, 13 Feb 2026 19:58:12 -0500 [thread overview]
Message-ID: <20260214005825.3665084-6-sashal@kernel.org> (raw)
In-Reply-To: <20260214005825.3665084-1-sashal@kernel.org>
From: Qiuxu Zhuo <qiuxu.zhuo@intel.com>
[ Upstream commit 41ca2155d62b0b0d217f59e1bce18362d0c2446f ]
Intel Amston Lake SoCs with IBECC (In-Band ECC) capability share the same
IBECC registers as Alder Lake-N SoCs. Add two new compute die IDs for
Amston Lake SoC products to enable EDAC support.
Signed-off-by: Qiuxu Zhuo <qiuxu.zhuo@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Tested-by: Jianfeng Gao <jianfeng.gao@intel.com>
Link: https://patch.msgid.link/20251124065457.3630949-2-qiuxu.zhuo@intel.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
LLM Generated explanations, may be completely bogus:
Now I have all the information needed for a complete analysis. Here is
my detailed assessment:
---
## Detailed Analysis: EDAC/igen6: Add two Intel Amston Lake SoCs support
### 1. Commit Message Analysis
The commit adds two new PCI compute die IDs (`DID_ASL_SKU2 = 0x4646`,
`DID_ASL_SKU3 = 0x4652`) for Intel Amston Lake SoC products to the
`igen6_edac` driver. The commit message explicitly states these SoCs
share the same IBECC registers as Alder Lake-N, meaning they reuse the
existing `adl_n_cfg` configuration structure.
- **Author**: Qiuxu Zhuo (Intel) - the primary maintainer and original
author of this driver
- **Signed-off-by**: Tony Luck (Intel RAS maintainer) - trusted
subsystem maintainer
- **Tested-by**: Jianfeng Gao (Intel) - hardware tested on actual Amston
Lake devices
### 2. Code Change Analysis
The diff is minimal - exactly **4 lines added** across a single file:
1. **Two `#define` additions** (lines after existing `DID_ASL_SKU1`):
- `#define DID_ASL_SKU2 0x4646`
- `#define DID_ASL_SKU3 0x4652`
2. **Two PCI device table entries** (in `igen6_pci_tbl[]`):
- `{ PCI_VDEVICE(INTEL, DID_ASL_SKU2), (kernel_ulong_t)&adl_n_cfg }`
- `{ PCI_VDEVICE(INTEL, DID_ASL_SKU3), (kernel_ulong_t)&adl_n_cfg }`
Both new entries use the already-existing `adl_n_cfg` configuration,
which has been in the kernel since v6.8 (commit `c4a5398991fd2`). No new
code paths, no new functions, no behavioral changes. This is a pure PCI
device ID addition.
### 3. Classification: New Device IDs (Explicitly Allowed Exception)
This is a textbook **new device ID addition** to an existing driver. The
stable kernel rules documentation explicitly allows this:
> "Adding PCI IDs, USB IDs, ACPI IDs, etc. to existing drivers - These
are trivial one-line additions that enable hardware support"
The pattern is identical to many prior device ID additions to this
driver:
- Arizona Beach (`b804d7c59aea0`) - single PCI ID using `adl_n_cfg`
- Alder Lake-N extra SKU (`65c441ec58224`) - single PCI ID using
`adl_n_cfg`
- Arrow Lake-U/H (`88150cd9501b9`) - PCI IDs using `mtl_p_cfg`
### 4. Scope and Risk Assessment
- **Lines changed**: 4 added, 0 deleted
- **Files touched**: 1 (`drivers/edac/igen6_edac.c`)
- **Complexity**: Near-zero - just PCI ID defines and table entries
- **Risk of regression**: Effectively zero. The new PCI IDs will only
match hardware that has those specific device IDs. If no such hardware
is present, the entries are completely inert. If the hardware IS
present, it uses the well-tested `adl_n_cfg` path that Alder Lake-N,
Arizona Beach, and Amston Lake SKU1 all use.
### 5. User Impact
Intel Amston Lake SoCs are described as "tailored for edge computing
needs" in the original Amston Lake commit. EDAC (Error Detection and
Correction) is critical for:
- **Edge computing and embedded systems** - where these SoCs are
deployed
- **Reliability-critical environments** - where memory error detection
prevents silent data corruption
- **Enterprise/industrial applications** - Amston Lake targets this
market segment
Without these device IDs, users with Amston Lake SKU2/SKU3 hardware get
**no IBECC EDAC support** - meaning memory errors go undetected, which
can lead to silent data corruption.
### 6. Stability Indicators
- Written by the driver's original author (Qiuxu Zhuo at Intel)
- Signed-off by the RAS subsystem maintainer (Tony Luck)
- Hardware-tested by Intel engineer (Jianfeng Gao)
- The same `adl_n_cfg` config is already used by 12+ Alder Lake-N SKUs,
Arizona Beach, and ASL_SKU1 - extremely well-tested code path
### 7. Dependency Check
This commit depends on commit `099d2db3625b3` ("EDAC/igen6: Add Intel
Amston Lake SoCs support") which introduced `DID_ASL_SKU1` and the
Amston Lake comment section. That commit landed in v6.16-rc1. Both
commits would need to be backported together to stable trees that have
`adl_n_cfg` (v6.8+). This is straightforward - both are trivial device
ID additions.
The `adl_n_cfg` configuration exists since v6.8 (commit
`c4a5398991fd2`), so active stable trees 6.8.y, 6.12.y would have the
necessary infrastructure. For 6.6.y, the `adl_n_cfg` is also present
since it was added in v6.8-rc1 which branched after 6.6 - actually let
me verify:
The `adl_n_cfg` was introduced by `c4a5398991fd2` which is tagged at
`v6.8-rc1~209^2~8`. This means it's in v6.8+. Active stable trees like
6.12.y and 6.6.y need to be checked individually, but 6.6.y would NOT
have `adl_n_cfg` since it predates v6.8. Stable trees 6.8+ would have
it.
### Summary
| Criterion | Assessment |
|---|---|
| Fixes real issue? | Yes - enables EDAC on Amston Lake SKU2/SKU3
hardware |
| Obviously correct? | Yes - trivial PCI ID addition |
| Small and contained? | Yes - 4 lines, 1 file |
| New features? | No - enables existing functionality on new hardware |
| Risk? | Near-zero |
| Tested? | Yes (Tested-by tag from Intel) |
| Category | New Device IDs - explicitly allowed in stable |
This commit is a clear-cut example of the "new device ID" exception to
stable kernel rules. It enables EDAC support for real Intel hardware
(Amston Lake edge computing SoCs) with zero risk of regression. The
change is trivial, authored and tested by Intel engineers, and follows
the exact same pattern as numerous prior device ID additions to this
driver.
**YES**
drivers/edac/igen6_edac.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/edac/igen6_edac.c b/drivers/edac/igen6_edac.c
index 839b6dd3629e9..f2c9270c1893c 100644
--- a/drivers/edac/igen6_edac.c
+++ b/drivers/edac/igen6_edac.c
@@ -246,6 +246,8 @@ static struct work_struct ecclog_work;
/* Compute did IDs for Amston Lake with IBECC */
#define DID_ASL_SKU1 0x464a
+#define DID_ASL_SKU2 0x4646
+#define DID_ASL_SKU3 0x4652
/* Compute die IDs for Raptor Lake-P with IBECC */
#define DID_RPL_P_SKU1 0xa706
@@ -628,6 +630,8 @@ static struct pci_device_id igen6_pci_tbl[] = {
{ PCI_VDEVICE(INTEL, DID_ADL_N_SKU12), (kernel_ulong_t)&adl_n_cfg },
{ PCI_VDEVICE(INTEL, DID_AZB_SKU1), (kernel_ulong_t)&adl_n_cfg },
{ PCI_VDEVICE(INTEL, DID_ASL_SKU1), (kernel_ulong_t)&adl_n_cfg },
+ { PCI_VDEVICE(INTEL, DID_ASL_SKU2), (kernel_ulong_t)&adl_n_cfg },
+ { PCI_VDEVICE(INTEL, DID_ASL_SKU3), (kernel_ulong_t)&adl_n_cfg },
{ PCI_VDEVICE(INTEL, DID_RPL_P_SKU1), (kernel_ulong_t)&rpl_p_cfg },
{ PCI_VDEVICE(INTEL, DID_RPL_P_SKU2), (kernel_ulong_t)&rpl_p_cfg },
{ PCI_VDEVICE(INTEL, DID_RPL_P_SKU3), (kernel_ulong_t)&rpl_p_cfg },
--
2.51.0
next prev parent reply other threads:[~2026-02-14 0:58 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-14 0:58 [PATCH AUTOSEL 6.19-5.10] parisc: Prevent interrupts during reboot Sasha Levin
2026-02-14 0:58 ` [PATCH AUTOSEL 6.19-6.18] soc: imx8m: Fix error handling for clk_prepare_enable() Sasha Levin
2026-02-14 0:58 ` [PATCH AUTOSEL 6.19] soc/tegra: pmc: Fix unsafe generic_handle_irq() call Sasha Levin
2026-02-14 0:58 ` [PATCH AUTOSEL 6.19-6.18] x86/sev: Use kfree_sensitive() when freeing a SNP message descriptor Sasha Levin
2026-02-14 0:58 ` [PATCH AUTOSEL 6.19-6.12] firmware: arm_ffa: Unmap Rx/Tx buffers on init failure Sasha Levin
2026-02-14 0:58 ` Sasha Levin [this message]
2026-02-14 0:58 ` [PATCH AUTOSEL 6.19-6.18] EDAC/igen6: Add more Intel Panther Lake-H SoCs support Sasha Levin
2026-02-14 0:58 ` [PATCH AUTOSEL 6.19-5.10] arm64: tegra: smaug: Add usb-role-switch support Sasha Levin
2026-02-14 0:58 ` [PATCH AUTOSEL 6.19-6.12] Revert "arm64: zynqmp: Add an OP-TEE node to the device tree" Sasha Levin
2026-02-16 10:21 ` [PATCH AUTOSEL 6.19-5.10] parisc: Prevent interrupts during reboot Geert Uytterhoeven
2026-02-16 13:12 ` Sasha Levin
2026-02-16 13:28 ` Geert Uytterhoeven
2026-02-16 15:48 ` Sasha Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260214005825.3665084-6-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=bp@alien8.de \
--cc=jianfeng.gao@intel.com \
--cc=linux-edac@vger.kernel.org \
--cc=patches@lists.linux.dev \
--cc=qiuxu.zhuo@intel.com \
--cc=stable@vger.kernel.org \
--cc=tony.luck@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox