[PATCH AUTOSEL 6.19-6.18] platform/x86: hp-wmi: Add Omen 16-xd0xxx fan and thermal support
From: Sasha Levin
Date: Tue Mar 10 2026 - 05:07:38 EST
From: Krishna Chomal <krishna.chomal108@xxxxxxxxx>
[ Upstream commit 3c99a545b372c77b5d39715968a141f523eccbf2 ]
The HP Omen 16-xd0xxx (board ID: 8BCD) has the same WMI interface as
other Victus S boards, but requires quirks for correctly switching
thermal profile (similar to HP Omen 16-wf1xxx, board ID: 8C78).
Add the DMI board name to victus_s_thermal_profile_boards[] table and
map it to omen_v1_thermal_params.
Testing on HP Omen 16-xd0xxx confirmed that platform profile is
registered successfully and fan RPMs are readable and controllable.
Tested-by: Varad Amol Pisale <varadpisale.work@xxxxxxxxx>
Signed-off-by: Krishna Chomal <krishna.chomal108@xxxxxxxxx>
Link: https://patch.msgid.link/20260218050235.94687-1-krishna.chomal108@xxxxxxxxx
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
LLM Generated explanations, may be completely bogus:
## Analysis
This commit adds a DMI board name entry ("8BCD") for the HP Omen
16-xd0xxx laptop to the `victus_s_thermal_profile_boards[]` table,
mapping it to `omen_v1_thermal_params`. This is a hardware quirk/device
ID addition to an existing driver.
### Change Classification
This is a **hardware quirk addition** — one of the explicitly allowed
exception categories for stable backports. The change:
- Adds exactly 4 lines to an existing DMI matching table
- Uses an already-existing parameter set (`omen_v1_thermal_params`)
- Only affects the specific board ID "8BCD" (HP Omen 16-xd0xxx)
- Follows the exact same pattern as other entries in the table (e.g.,
board "8C78" also uses `omen_v1_thermal_params`)
### Risk Assessment
**Extremely low risk:**
- The change is confined to a single DMI match table — it cannot affect
any other hardware
- It uses existing infrastructure (`omen_v1_thermal_params`) that is
already tested with board "8C78"
- The commit has both `Tested-by` and `Reviewed-by` tags from the
subsystem maintainer (Ilpo Järvinen)
- No code logic changes, no new functions, no new data structures
### User Impact
Without this entry, HP Omen 16-xd0xxx users cannot:
- Control fan speeds through the platform profile interface
- Switch thermal profiles (performance/balanced/quiet)
This is real hardware enablement for real users — the "Tested-by" from a
different person than the author confirms at least two users need this.
### Stable Criteria Check
- **Obviously correct**: Yes — trivial table entry addition matching
existing patterns
- **Fixes real issue**: Yes — enables hardware control on specific
laptop (quirk category)
- **Small and contained**: Yes — 4 lines in one file
- **No new features/APIs**: Correct — uses existing driver
infrastructure
- **Tested**: Yes — explicitly tested on the hardware
### Verification
- Verified the diff is purely a table entry addition to
`victus_s_thermal_profile_boards[]` — no code logic changes
- Verified `omen_v1_thermal_params` is already used by board "8C78" in
the same table, confirming it's an existing, tested parameter set
- Verified the commit has `Tested-by: Varad Amol Pisale` and `Reviewed-
by: Ilpo Järvinen` (subsystem maintainer)
- Verified the change follows the exact DMI_MATCH pattern used by all
other entries in the table
- The commit message explicitly states "Testing on HP Omen 16-xd0xxx
confirmed that platform profile is registered successfully and fan
RPMs are readable and controllable"
This is a textbook hardware quirk addition — small, safe, tested, and
enables real hardware for real users. It matches the stable exception
for device quirks/IDs perfectly.
**YES**
drivers/platform/x86/hp/hp-wmi.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/platform/x86/hp/hp-wmi.c b/drivers/platform/x86/hp/hp-wmi.c
index 9fcc18635e4e7..bc550da031fa1 100644
--- a/drivers/platform/x86/hp/hp-wmi.c
+++ b/drivers/platform/x86/hp/hp-wmi.c
@@ -168,6 +168,10 @@ static const struct dmi_system_id victus_s_thermal_profile_boards[] __initconst
.matches = { DMI_MATCH(DMI_BOARD_NAME, "8BBE") },
.driver_data = (void *)&victus_s_thermal_params,
},
+ {
+ .matches = { DMI_MATCH(DMI_BOARD_NAME, "8BCD") },
+ .driver_data = (void *)&omen_v1_thermal_params,
+ },
{
.matches = { DMI_MATCH(DMI_BOARD_NAME, "8BD4") },
.driver_data = (void *)&victus_s_thermal_params,
--
2.51.0