From: Sasha Levin <sashal@kernel.org>
To: patches@lists.linux.dev, stable@vger.kernel.org
Cc: Peter Jakubek <peterjakubek@gmail.com>,
Mark Brown <broonie@kernel.org>, Sasha Levin <sashal@kernel.org>,
yung-chuan.liao@linux.intel.com, liam.r.girdwood@intel.com,
peter.ujfalusi@linux.intel.com,
ranjani.sridharan@linux.intel.com, Vijendar.Mukunda@amd.com,
ckeepax@opensource.cirrus.com, simont@opensource.cirrus.com,
rf@opensource.cirrus.com, mstrozek@opensource.cirrus.com,
deep_harsora@dell.com
Subject: [PATCH AUTOSEL 6.16-6.15] ASoC: Intel: sof_sdw: Add quirk for Alienware Area 51 (2025) 0CCC SKU
Date: Sun, 10 Aug 2025 12:51:52 -0400 [thread overview]
Message-ID: <20250810165158.1888206-10-sashal@kernel.org> (raw)
In-Reply-To: <20250810165158.1888206-1-sashal@kernel.org>
From: Peter Jakubek <peterjakubek@gmail.com>
[ Upstream commit 1b03391d073dad748636a1ad9668b837cce58265 ]
Add DMI quirk entry for Alienware systems with SKU "0CCC" to enable
proper speaker codec configuration (SOC_SDW_CODEC_SPKR).
This system requires the same audio configuration as some existing Dell systems.
Without this patch, the laptop's speakers and microphone will not work.
Signed-off-by: Peter Jakubek <peterjakubek@gmail.com>
Link: https://patch.msgid.link/20250731172104.2009007-1-peterjakubek@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
LLM Generated explanations, may be completely bogus:
Now, let me analyze the commit for backport suitability:
**Backport Status: YES**
## Extensive Analysis:
This commit should be backported to stable kernel trees based on the
following detailed analysis:
### 1. **Hardware Enablement Fix**
The commit adds a DMI quirk entry for the Alienware Area 51 (2025) with
SKU "0CCC" to enable proper speaker codec configuration. The commit
message explicitly states: "Without this patch, the laptop's speakers
and microphone will not work." This is a clear hardware functionality
fix where audio devices are completely non-functional without this
patch.
### 2. **Minimal and Contained Change**
The code change is extremely minimal - it adds exactly 8 lines to the
`sof_sdw_quirk_table[]` array:
```c
+ {
+ .callback = sof_sdw_quirk_cb,
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Alienware"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CCC")
+ },
+ .driver_data = (void *)(SOC_SDW_CODEC_SPKR),
+ },
```
### 3. **Follows Established Pattern**
The change follows the exact same pattern as numerous other
Dell/Alienware system quirks already in the file. Looking at lines
694-742 in the same file, we can see identical entries for Dell systems
with different SKUs (0CF1, 0CF3, 0CF4, 0CF5, etc.), all using the same
`SOC_SDW_CODEC_SPKR` flag.
### 4. **Zero Risk of Regression**
The quirk only activates when the DMI system matches exactly "Alienware"
vendor and SKU "0CCC". This makes it impossible to affect any other
systems. The `SOC_SDW_CODEC_SPKR` flag (defined in
`/home/sasha/linux/include/sound/soc_sdw_utils.h` as BIT(15)) enables
codec internal speaker support, which is a well-tested configuration
used by many other systems.
### 5. **Similar Commits Are Routinely Backported**
Recent git history shows numerous similar quirk additions for Dell and
Lenovo systems (commits like d859923faeca, af23d38caae5, 60f1c71ec874)
that add DMI quirks for audio hardware enablement. These types of
hardware enablement fixes are regularly accepted into stable trees.
### 6. **User Impact**
Without this patch, users of the Alienware Area 51 (2025) laptop have
completely non-functional audio (no speakers, no microphone). This
severely impacts the usability of the device and would force users to
use external audio devices or compile custom kernels.
### 7. **No Architectural Changes**
The commit makes no architectural changes, adds no new features, and
simply extends an existing quirk table with a new hardware ID. It uses
existing, well-tested infrastructure (DMI matching and
SOC_SDW_CODEC_SPKR flag).
### Conclusion:
This is a textbook example of a commit that should be backported to
stable kernels. It fixes a real hardware issue (non-functional audio),
has zero regression risk due to exact DMI matching, follows established
patterns, and is minimal in scope. The fix enables basic functionality
for affected hardware without any possibility of impacting other
systems.
sound/soc/intel/boards/sof_sdw.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/sound/soc/intel/boards/sof_sdw.c b/sound/soc/intel/boards/sof_sdw.c
index 504887505e68..c576ec5527f9 100644
--- a/sound/soc/intel/boards/sof_sdw.c
+++ b/sound/soc/intel/boards/sof_sdw.c
@@ -741,6 +741,14 @@ static const struct dmi_system_id sof_sdw_quirk_table[] = {
},
.driver_data = (void *)(SOC_SDW_CODEC_SPKR),
},
+ {
+ .callback = sof_sdw_quirk_cb,
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Alienware"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "0CCC")
+ },
+ .driver_data = (void *)(SOC_SDW_CODEC_SPKR),
+ },
/* Pantherlake devices*/
{
.callback = sof_sdw_quirk_cb,
--
2.39.5
next prev parent reply other threads:[~2025-08-10 16:52 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-10 16:51 [PATCH AUTOSEL 6.16-5.10] block: avoid possible overflow for chunk_sectors check in blk_stack_limits() Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-6.12] tools/power turbostat: Handle non-root legacy-uncore sysfs permissions Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-6.12] ALSA: hda/realtek: add LG gram 16Z90R-A to alc269 fixup table Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-6.12] lib/sbitmap: convert shallow_depth from one word to the whole sbitmap Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-6.1] ASoC: Intel: avs: Fix uninitialized pointer error in probe() Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-6.12] smb: client: don't call init_waitqueue_head(&info->conn_wait) twice in _smbd_get_connection Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-5.4] pNFS: Fix stripe mapping in block/scsi layout Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-5.4] pNFS: Fix uninited ptr deref " Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-5.4] net: phy: smsc: add proper reset flags for LAN8710A Sasha Levin
2025-08-10 16:51 ` Sasha Levin [this message]
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16] regmap: irq: Free the regmap-irq mutex Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-6.12] tools/power turbostat: Fix build with musl Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16] irqchip/mvebu-gicp: Clear pending interrupts on init Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-5.4] pNFS: Fix disk addr range check in block/scsi layout Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-6.12] tools/power turbostat: Handle cap_get_proc() ENOSYS Sasha Levin
2025-08-10 16:51 ` [PATCH AUTOSEL 6.16-5.4] pNFS: Handle RPC size limit for layoutcommits 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=20250810165158.1888206-10-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=Vijendar.Mukunda@amd.com \
--cc=broonie@kernel.org \
--cc=ckeepax@opensource.cirrus.com \
--cc=deep_harsora@dell.com \
--cc=liam.r.girdwood@intel.com \
--cc=mstrozek@opensource.cirrus.com \
--cc=patches@lists.linux.dev \
--cc=peter.ujfalusi@linux.intel.com \
--cc=peterjakubek@gmail.com \
--cc=ranjani.sridharan@linux.intel.com \
--cc=rf@opensource.cirrus.com \
--cc=simont@opensource.cirrus.com \
--cc=stable@vger.kernel.org \
--cc=yung-chuan.liao@linux.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