From: Andrew Elantsev elantsew.andrew@gmail.com
[ Upstream commit e2cb8ef0372665854fca6fa7b30b20dd35acffeb ]
Add a DMI quirk for the Honor MagicBook X16 2025 laptop fixing the issue where the internal microphone was not detected.
Signed-off-by: Andrew Elantsev elantsew.andrew@gmail.com Link: https://patch.msgid.link/20251210203800.142822-1-elantsew.andrew@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:
Looking at this commit, I'll analyze it systematically to determine if it's appropriate for stable backporting.
## 1. COMMIT MESSAGE ANALYSIS
- **Subject:** ASoC: amd: yc: Add quirk for Honor MagicBook X16 2025 - **Problem:** Internal microphone not detected on this laptop model - **Solution:** Add a DMI quirk entry to enable proper audio detection - Has proper sign-offs from author and Mark Brown (ASoC maintainer)
## 2. CODE CHANGE ANALYSIS
The change is extremely simple - adding one new entry to the `yc_acp_quirk_table[]` DMI system identification table:
```c { .driver_data = &acp6x_card, .matches = { DMI_MATCH(DMI_BOARD_VENDOR, "HONOR"), DMI_MATCH(DMI_PRODUCT_NAME, "GOH-X"), } }, ```
This follows the **exact same pattern** as all other entries in this table (System76, MSI, etc.). No new code logic is introduced - it just adds a hardware identifier to an existing quirk mechanism.
## 3. CLASSIFICATION
This is a **hardware quirk/workaround** - one of the explicitly allowed exception categories for stable trees: - Adds DMI identification for a specific laptop model - Uses existing driver infrastructure (`acp6x_card`) - Enables hardware that would otherwise not function
This is NOT: - A new feature - A new driver or API - Any kind of refactoring or cleanup
## 4. SCOPE AND RISK ASSESSMENT
- **Lines changed:** ~7 lines (one struct entry) - **Files touched:** 1 file - **Complexity:** Trivial - **Risk:** Extremely low - Only affects Honor MagicBook X16 2025 laptops - Cannot possibly break other systems - If wrong, only that specific device is affected
## 5. USER IMPACT
- **Affected users:** Honor MagicBook X16 2025 laptop owners - **Bug severity:** Medium-high - internal microphone completely non- functional - **Real-world impact:** Yes - this is a fix for actual shipping hardware where a core feature (microphone) doesn't work
Without this quirk, users cannot use video conferencing, voice recording, or any audio input on this laptop.
## 6. STABILITY INDICATORS
- Maintainer signed off (Mark Brown, ASoC maintainer) - Follows established pattern used by dozens of other entries in the same file - The AMD YC audio driver has been stable for years
## 7. DEPENDENCY CHECK
- No dependencies on other commits - Uses existing `acp6x_card` structure that already exists in stable - The acp6x-mach.c driver has been in the kernel since 5.x series
## CONCLUSION
This commit is a textbook example of what **should** be backported to stable:
1. **Obviously correct:** Simple table entry following existing pattern 2. **Fixes a real bug:** Internal microphone doesn't work without it 3. **Small and contained:** 7 lines, single file, no logic changes 4. **No new features:** Just enables existing driver for new hardware 5. **Zero risk to other systems:** Only affects one specific laptop model 6. **Falls under quirk exception:** Hardware quirks are explicitly allowed in stable
DMI quirk additions like this are routinely backported to stable trees because they provide significant user benefit (making hardware work) with essentially zero risk to existing functionality.
**YES**
sound/soc/amd/yc/acp6x-mach.c | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/sound/soc/amd/yc/acp6x-mach.c b/sound/soc/amd/yc/acp6x-mach.c index f210a253da9f..bf4d9d336561 100644 --- a/sound/soc/amd/yc/acp6x-mach.c +++ b/sound/soc/amd/yc/acp6x-mach.c @@ -661,6 +661,13 @@ static const struct dmi_system_id yc_acp_quirk_table[] = { DMI_MATCH(DMI_PRODUCT_NAME, "Bravo 15 C7UCX"), } }, + { + .driver_data = &acp6x_card, + .matches = { + DMI_MATCH(DMI_BOARD_VENDOR, "HONOR"), + DMI_MATCH(DMI_PRODUCT_NAME, "GOH-X"), + } + }, {} };