* [PATCH] platform/x86: hp-wmi: Define known Victus S driver data
@ 2026-09-27 8:55 Suryansh Singh
2026-09-27 9:38 ` [PATCH v2] " Suryansh Singh
0 siblings, 1 reply; 2+ messages in thread
From: Suryansh Singh @ 2026-09-27 8:55 UTC (permalink / raw)
To: platform-driver-x86
Cc: hansg, ilpo.jarvinen, krishna.chomal108, linux-kernel, Suryansh Singh
Currently, Victus S thermal parameters use the Unknown Offset for TP
(Thermal Profile) from the EC offsets enum, even though there is a
Victus S EC Offset in the same enum.
This was done so because the EC layout is highly
variable across this lineup of laptops. The only place where the 0x59
offset is used is the driver data for Omen V1 models, despite it being
labelled as the Victus S TP offset. The name clearly doesn't relate
to the use case.
However, after some downstream searching, I have found that there is
a Victus S board which does have the expected EC layout corresponding to
the very Victus S offset itself.
Add known board parameters for the Victus S models to correctly map
the found board (8C99) and any others in the future.
Link: https://github.com/yunusemreyl/omen-space/commit/f32a76386592d1a604e574c693b323d15e978089
Signed-off-by: Suryansh Singh <technosfan14@gmail.com>
---
drivers/platform/x86/hp/hp-wmi.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/drivers/platform/x86/hp/hp-wmi.c b/drivers/platform/x86/hp/hp-wmi.c
index 7ab81ce5f8d4..6486e0ef8753 100644
--- a/drivers/platform/x86/hp/hp-wmi.c
+++ b/drivers/platform/x86/hp/hp-wmi.c
@@ -121,6 +121,13 @@ static const struct thermal_profile_params victus_s_thermal_params = {
.ec_tp_offset = HP_EC_OFFSET_UNKNOWN,
};
+
+static const struct thermal_profile_params victus_s_known_thermal_params = {
+ .performance = HP_VICTUS_S_THERMAL_PROFILE_PERFORMANCE,
+ .balanced = HP_VICTUS_S_THERMAL_PROFILE_DEFAULT,
+ .low_power = HP_VICTUS_S_THERMAL_PROFILE_DEFAULT,
+ .ec_tp_offset = HP_VICTUS_S_EC_THERMAL_PROFILE_OFFSET,
+};
+
static const struct thermal_profile_params omen_v1_thermal_params = {
.performance = HP_OMEN_V1_THERMAL_PROFILE_PERFORMANCE,
.balanced = HP_OMEN_V1_THERMAL_PROFILE_DEFAULT,
@@ -164,6 +171,11 @@ static const struct hp_wmi_board_params victus_s_board_params = {
.fan_profile = &victus_s_fan_profile_params,
};
+
+static const struct hp_wmi_board_params victus_s_known_board_params = {
+ .thermal_profile = &victus_s_known_thermal_params,
+ .fan_profile = &victus_s_fan_profile_params,
+};
+
static const struct hp_wmi_board_params omen_v1_board_params = {
.thermal_profile = &omen_v1_thermal_params,
.fan_profile = &victus_s_fan_profile_params,
@@ -316,7 +328,7 @@ static const struct dmi_system_id hp_wmi_feature_boards[] __initconst = {
},
{
.matches = { DMI_MATCH(DMI_BOARD_NAME, "8C99") },
- .driver_data = (void *)&victus_s_board_params,
+ .driver_data = (void *)&victus_s_known_board_params,
},
{
.matches = { DMI_MATCH(DMI_BOARD_NAME, "8C9C") },
---
2.55.0
^ permalink raw reply [flat|nested] 2+ messages in thread* [PATCH v2] platform/x86: hp-wmi: Define known Victus S driver data
2026-09-27 8:55 [PATCH] platform/x86: hp-wmi: Define known Victus S driver data Suryansh Singh
@ 2026-09-27 9:38 ` Suryansh Singh
0 siblings, 0 replies; 2+ messages in thread
From: Suryansh Singh @ 2026-09-27 9:38 UTC (permalink / raw)
To: technosfan14
Cc: hansg, ilpo.jarvinen, krishna.chomal108, linux-kernel,
platform-driver-x86
Currently, Victus S thermal parameters use the Unknown Offset for TP
(Thermal Profile) from the EC offsets enum, even though there is a
Victus S EC Offset in the same enum.
This was done so because the EC layout is highly
variable across this lineup of laptops. The only place where the 0x59
offset is used is the driver data for Omen V1 models, despite it being
labelled as the Victus S TP offset. The name clearly doesn't relate
to the use case.
However, after some downstream searching, I have found that there is
a Victus S board which does have the expected EC layout corresponding to
the very Victus S offset itself.
Add known board parameters for the Victus S models to correctly map
the found board (8C99) and any others in the future, and add
required if-statements for platform profile options for the new
parameters.
Link: https://github.com/yunusemreyl/omen-space/commit/f32a76386592d1a604e574c693b323d15e978089
Signed-off-by: Suryansh Singh <technosfan14@gmail.com>
---
drivers/platform/x86/hp/hp-wmi.c | 20 +++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/drivers/platform/x86/hp/hp-wmi.c b/drivers/platform/x86/hp/hp-wmi.c
index 7ab81ce5f8d4..7851cb607c74 100644
--- a/drivers/platform/x86/hp/hp-wmi.c
+++ b/drivers/platform/x86/hp/hp-wmi.c
@@ -121,6 +121,13 @@ static const struct thermal_profile_params victus_s_thermal_params = {
.ec_tp_offset = HP_EC_OFFSET_UNKNOWN,
};
+static const struct thermal_profile_params victus_s_known_thermal_params = {
+ .performance = HP_VICTUS_S_THERMAL_PROFILE_PERFORMANCE,
+ .balanced = HP_VICTUS_S_THERMAL_PROFILE_DEFAULT,
+ .low_power = HP_VICTUS_S_THERMAL_PROFILE_DEFAULT,
+ .ec_tp_offset = HP_VICTUS_S_EC_THERMAL_PROFILE_OFFSET,
+};
+
static const struct thermal_profile_params omen_v1_thermal_params = {
.performance = HP_OMEN_V1_THERMAL_PROFILE_PERFORMANCE,
.balanced = HP_OMEN_V1_THERMAL_PROFILE_DEFAULT,
@@ -164,6 +171,11 @@ static const struct hp_wmi_board_params victus_s_board_params = {
.fan_profile = &victus_s_fan_profile_params,
};
+static const struct hp_wmi_board_params victus_s_known_board_params = {
+ .thermal_profile = &victus_s_known_thermal_params,
+ .fan_profile = &victus_s_fan_profile_params,
+};
+
static const struct hp_wmi_board_params omen_v1_board_params = {
.thermal_profile = &omen_v1_thermal_params,
.fan_profile = &victus_s_fan_profile_params,
@@ -316,7 +328,7 @@ static const struct dmi_system_id hp_wmi_feature_boards[] __initconst = {
},
{
.matches = { DMI_MATCH(DMI_BOARD_NAME, "8C99") },
- .driver_data = (void *)&victus_s_board_params,
+ .driver_data = (void *)&victus_s_known_board_params,
},
{
.matches = { DMI_MATCH(DMI_BOARD_NAME, "8C9C") },
@@ -2146,10 +2158,12 @@ static int platform_profile_victus_s_get_ec(enum platform_profile_option *profil
* of these values.
*/
if (tp == victus_s_thermal_params.performance ||
- tp == omen_v1_thermal_params.performance) {
+ tp == omen_v1_thermal_params.performance ||
+ tp == victus_s_known_thermal_params.performance) {
*profile = PLATFORM_PROFILE_PERFORMANCE;
} else if (tp == victus_s_thermal_params.balanced ||
- tp == omen_v1_thermal_params.balanced) {
+ tp == omen_v1_thermal_params.balanced ||
+ tp == victus_s_known_thermal_params.balanced) {
/*
* Since both PLATFORM_PROFILE_LOW_POWER and
* PLATFORM_PROFILE_BALANCED share the same thermal profile
--
2.55.0
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-27 9:39 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-27 8:55 [PATCH] platform/x86: hp-wmi: Define known Victus S driver data Suryansh Singh
2026-09-27 9:38 ` [PATCH v2] " Suryansh Singh
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®