* [PATCH v2 0/3] Add extreme platform profile
@ 2025-11-06 21:21 Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option Derek J. Clark
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Derek J. Clark @ 2025-11-06 21:21 UTC (permalink / raw)
To: Ilpo Järvinen, Armin Wolf, Len Brown, Rafael J . Wysocki,
Jonathan Corbet
Cc: Mario Limonciello, Zhixin Zhang, Mia Shao, Mark Pearson,
Pierre-Loup A . Griffais, Kurt Borja, Derek J . Clark,
platform-driver-x86, linux-doc, linux-kernel, linux-acpi
This series adds a new "extreme" platform profile mode and uses it for
the lenovo-wmi-gamezone driver. It also adds the Lenovo Legion Go 2
to the extreme mode quirks table.
On some Lenovo Legion devices there is a thermal mode called extreme
that corresponds to setting ppt/spl vlaues to the maximum achievable by
the cooling solution. This correlates strongly with an overall power draw
that exceeds the DC power draw capability of the internal battery. This
mode being mapped to performance when extreme mode is detected as
supported, with the actual performance mode being set to
balanced-performance, has led to some misinformation being promulgated
that performance is always a bad setting in Linux for these devices.
There is also some confusion that the mode labeled performance in
userspace, which corresponds to a red LED in Windows, shows as purple
when set using the hardware extreme mode.
I'll also note that as the hard TDP limits are refreshed when on AC or DC
by the ACPI notifier of lenovo-wmi-other method driver, no special handling
of the battery is needed for safety limiting extreme mode.
Signed-off-by: Derek J. Clark <derekjohn.clark@gmail.com>
---
v2:
- Drop patch 3/3, keep extreme mode quirks table
- Add Legion Go 2 to quirks table
- Fix nits from Mario
v1:
https://lore.kernel.org/platform-driver-x86/20251026081240.997038-1-derekjohn.clark@gmail.com/
Derek J. Clark (3):
acpi: platform_profile - Add Extreme profile option
platform/x86: lenovo-wmi-gamezone Use Extreme vice
balanced-performance
platform/x86: wmi-gamezone: Add Legion Go 2 Quirks
.../ABI/testing/sysfs-class-platform-profile | 2 ++
.../wmi/devices/lenovo-wmi-gamezone.rst | 29 +++++++--------
drivers/acpi/platform_profile.c | 1 +
drivers/platform/x86/lenovo/wmi-gamezone.c | 35 +++++++++++--------
include/linux/platform_profile.h | 1 +
5 files changed, 38 insertions(+), 30 deletions(-)
--
2.51.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option
2025-11-06 21:21 [PATCH v2 0/3] Add extreme platform profile Derek J. Clark
@ 2025-11-06 21:21 ` Derek J. Clark
2025-11-10 11:14 ` Ilpo Järvinen
2025-11-06 21:21 ` [PATCH v2 2/3] platform/x86: lenovo-wmi-gamezone Use extreme rather than balanced-performance Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 3/3] platform/x86: wmi-gamezone: Add Legion Go 2 Quirks Derek J. Clark
2 siblings, 1 reply; 7+ messages in thread
From: Derek J. Clark @ 2025-11-06 21:21 UTC (permalink / raw)
To: Ilpo Järvinen, Armin Wolf, Len Brown, Rafael J . Wysocki,
Jonathan Corbet
Cc: Mario Limonciello, Zhixin Zhang, Mia Shao, Mark Pearson,
Pierre-Loup A . Griffais, Kurt Borja, Derek J . Clark,
platform-driver-x86, linux-doc, linux-kernel, linux-acpi
Some devices, namely Lenovo Legion devices, have an "extreme" mode where
power draw is at the maximum limit of the cooling hardware. Add a new
"extreme" platform profile to properly reflect this operating mode.
Reviewed-by: Mario Limonciello (AMD) <superm1@kernel.org>
Acked-by: Rafael J. Wysocki (Intel) <rafael@kernel.org>
Signed-off-by: Derek J. Clark <derekjohn.clark@gmail.com>
---
Documentation/ABI/testing/sysfs-class-platform-profile | 2 ++
drivers/acpi/platform_profile.c | 1 +
include/linux/platform_profile.h | 1 +
3 files changed, 4 insertions(+)
diff --git a/Documentation/ABI/testing/sysfs-class-platform-profile b/Documentation/ABI/testing/sysfs-class-platform-profile
index dc72adfb830a..9bee8deb4dc9 100644
--- a/Documentation/ABI/testing/sysfs-class-platform-profile
+++ b/Documentation/ABI/testing/sysfs-class-platform-profile
@@ -23,6 +23,8 @@ Description: This file contains a space-separated list of profiles supported
power consumption with a slight bias
towards performance
performance High performance operation
+ extreme Higher performance operation that may exceed
+ internal battery draw limits when on AC power
custom Driver defined custom profile
==================== ========================================
diff --git a/drivers/acpi/platform_profile.c b/drivers/acpi/platform_profile.c
index b43f4459a4f6..78da17e16d9b 100644
--- a/drivers/acpi/platform_profile.c
+++ b/drivers/acpi/platform_profile.c
@@ -37,6 +37,7 @@ static const char * const profile_names[] = {
[PLATFORM_PROFILE_BALANCED] = "balanced",
[PLATFORM_PROFILE_BALANCED_PERFORMANCE] = "balanced-performance",
[PLATFORM_PROFILE_PERFORMANCE] = "performance",
+ [PLATFORM_PROFILE_EXTREME] = "extreme",
[PLATFORM_PROFILE_CUSTOM] = "custom",
};
static_assert(ARRAY_SIZE(profile_names) == PLATFORM_PROFILE_LAST);
diff --git a/include/linux/platform_profile.h b/include/linux/platform_profile.h
index a299225ab92e..2bf178bde2b5 100644
--- a/include/linux/platform_profile.h
+++ b/include/linux/platform_profile.h
@@ -24,6 +24,7 @@ enum platform_profile_option {
PLATFORM_PROFILE_BALANCED,
PLATFORM_PROFILE_BALANCED_PERFORMANCE,
PLATFORM_PROFILE_PERFORMANCE,
+ PLATFORM_PROFILE_EXTREME,
PLATFORM_PROFILE_CUSTOM,
PLATFORM_PROFILE_LAST, /*must always be last */
};
--
2.51.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 2/3] platform/x86: lenovo-wmi-gamezone Use extreme rather than balanced-performance
2025-11-06 21:21 [PATCH v2 0/3] Add extreme platform profile Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option Derek J. Clark
@ 2025-11-06 21:21 ` Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 3/3] platform/x86: wmi-gamezone: Add Legion Go 2 Quirks Derek J. Clark
2 siblings, 0 replies; 7+ messages in thread
From: Derek J. Clark @ 2025-11-06 21:21 UTC (permalink / raw)
To: Ilpo Järvinen, Armin Wolf, Len Brown, Rafael J . Wysocki,
Jonathan Corbet
Cc: Mario Limonciello, Zhixin Zhang, Mia Shao, Mark Pearson,
Pierre-Loup A . Griffais, Kurt Borja, Derek J . Clark,
platform-driver-x86, linux-doc, linux-kernel, linux-acpi
When upstreaming the gamezone WMI drivers the "extreme" mode was matched
to performance and performance was matched to balanced-performance, but
only when extreme mode was fully enabled. Otherwise performance was
matched to performance. This has led to quite a bit of confusion with
users not understanding why the LED color indicating the platform
profile doesn't match their expectations.
To solve this, replace the confusing convention with the new "extreme"
profile. While add it, update the documentation to reflect the expected
LED colors in each mode.
Signed-off-by: Derek J. Clark <derekjohn.clark@gmail.com>
---
.../wmi/devices/lenovo-wmi-gamezone.rst | 29 +++++++++----------
drivers/platform/x86/lenovo/wmi-gamezone.c | 18 ++++--------
2 files changed, 18 insertions(+), 29 deletions(-)
diff --git a/Documentation/wmi/devices/lenovo-wmi-gamezone.rst b/Documentation/wmi/devices/lenovo-wmi-gamezone.rst
index 997263e51a7d..8fa0a27fc05d 100644
--- a/Documentation/wmi/devices/lenovo-wmi-gamezone.rst
+++ b/Documentation/wmi/devices/lenovo-wmi-gamezone.rst
@@ -19,27 +19,24 @@ WMI GUID ``887B54E3-DDDC-4B2C-8B88-68A26A8835D0``
The Gamezone Data WMI interface provides platform-profile and fan curve
settings for devices that fall under the "Gaming Series" of Lenovo devices.
It uses a notifier chain to inform other Lenovo WMI interface drivers of the
-current platform profile when it changes.
+current platform profile when it changes. The currently set profile can be
+determined by the user on the hardware by looking at the color of the power
+or profile LED, depending on the model.
The following platform profiles are supported:
- - low-power
- - balanced
- - balanced-performance
- - performance
- - custom
+ - low-power, blue LED
+ - balanced, white LED
+ - performance, red LED
+ - extreme, purple LED
+ - custom, purple LED
-Balanced-Performance
+Extreme
~~~~~~~~~~~~~~~~~~~~
Some newer Lenovo "Gaming Series" laptops have an "Extreme Mode" profile
-enabled in their BIOS. For these devices, the performance platform profile
-corresponds to the BIOS Extreme Mode, while the balanced-performance
-platform profile corresponds to the BIOS Performance mode. For legacy
-devices, the performance platform profile will correspond with the BIOS
-Performance mode.
-
-For some newer devices the "Extreme Mode" profile is incomplete in the BIOS
-and setting it will cause undefined behavior. A BIOS bug quirk table is
-provided to ensure these devices cannot set "Extreme Mode" from the driver.
+enabled in their BIOS. For a subset of these devices the "Extreme Mode"
+profile is incomplete in the BIOS and setting it will cause undefined
+behavior. A BIOS bug quirk table is provided to ensure these devices cannot
+set "Extreme Mode" from the driver.
Custom Profile
~~~~~~~~~~~~~~
diff --git a/drivers/platform/x86/lenovo/wmi-gamezone.c b/drivers/platform/x86/lenovo/wmi-gamezone.c
index 0eb7fe8222f4..faabbd4657bd 100644
--- a/drivers/platform/x86/lenovo/wmi-gamezone.c
+++ b/drivers/platform/x86/lenovo/wmi-gamezone.c
@@ -171,14 +171,10 @@ static int lwmi_gz_profile_get(struct device *dev,
*profile = PLATFORM_PROFILE_BALANCED;
break;
case LWMI_GZ_THERMAL_MODE_PERFORMANCE:
- if (priv->extreme_supported) {
- *profile = PLATFORM_PROFILE_BALANCED_PERFORMANCE;
- break;
- }
*profile = PLATFORM_PROFILE_PERFORMANCE;
break;
case LWMI_GZ_THERMAL_MODE_EXTREME:
- *profile = PLATFORM_PROFILE_PERFORMANCE;
+ *profile = PLATFORM_PROFILE_EXTREME;
break;
case LWMI_GZ_THERMAL_MODE_CUSTOM:
*profile = PLATFORM_PROFILE_CUSTOM;
@@ -218,16 +214,12 @@ static int lwmi_gz_profile_set(struct device *dev,
case PLATFORM_PROFILE_BALANCED:
mode = LWMI_GZ_THERMAL_MODE_BALANCED;
break;
- case PLATFORM_PROFILE_BALANCED_PERFORMANCE:
- mode = LWMI_GZ_THERMAL_MODE_PERFORMANCE;
- break;
case PLATFORM_PROFILE_PERFORMANCE:
- if (priv->extreme_supported) {
- mode = LWMI_GZ_THERMAL_MODE_EXTREME;
- break;
- }
mode = LWMI_GZ_THERMAL_MODE_PERFORMANCE;
break;
+ case PLATFORM_PROFILE_EXTREME:
+ mode = LWMI_GZ_THERMAL_MODE_EXTREME;
+ break;
case PLATFORM_PROFILE_CUSTOM:
mode = LWMI_GZ_THERMAL_MODE_CUSTOM;
break;
@@ -338,7 +330,7 @@ static int lwmi_gz_platform_profile_probe(void *drvdata, unsigned long *choices)
priv->extreme_supported = lwmi_gz_extreme_supported(profile_support_ver);
if (priv->extreme_supported)
- set_bit(PLATFORM_PROFILE_BALANCED_PERFORMANCE, choices);
+ set_bit(PLATFORM_PROFILE_EXTREME, choices);
return 0;
}
--
2.51.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 3/3] platform/x86: wmi-gamezone: Add Legion Go 2 Quirks
2025-11-06 21:21 [PATCH v2 0/3] Add extreme platform profile Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 2/3] platform/x86: lenovo-wmi-gamezone Use extreme rather than balanced-performance Derek J. Clark
@ 2025-11-06 21:21 ` Derek J. Clark
2 siblings, 0 replies; 7+ messages in thread
From: Derek J. Clark @ 2025-11-06 21:21 UTC (permalink / raw)
To: Ilpo Järvinen, Armin Wolf, Len Brown, Rafael J . Wysocki,
Jonathan Corbet
Cc: Mario Limonciello, Zhixin Zhang, Mia Shao, Mark Pearson,
Pierre-Loup A . Griffais, Kurt Borja, Derek J . Clark,
platform-driver-x86, linux-doc, linux-kernel, linux-acpi
Add Legion Go 2 SKU's to the Extreme Mode quirks table.
Signed-off-by: Derek J. Clark <derekjohn.clark@gmail.com>
---
drivers/platform/x86/lenovo/wmi-gamezone.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/drivers/platform/x86/lenovo/wmi-gamezone.c b/drivers/platform/x86/lenovo/wmi-gamezone.c
index faabbd4657bd..bea4d2024628 100644
--- a/drivers/platform/x86/lenovo/wmi-gamezone.c
+++ b/drivers/platform/x86/lenovo/wmi-gamezone.c
@@ -266,8 +266,23 @@ static const struct dmi_system_id fwbug_list[] = {
},
.driver_data = &quirk_no_extreme_bug,
},
+ {
+ .ident = "Legion Go 8ASP2",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_VERSION, "Legion Go 8ASP2"),
+ },
+ .driver_data = &quirk_no_extreme_bug,
+ },
+ {
+ .ident = "Legion Go 8AHP2",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_VERSION, "Legion Go 8AHP2"),
+ },
+ .driver_data = &quirk_no_extreme_bug,
+ },
{},
-
};
/**
--
2.51.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option
2025-11-06 21:21 ` [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option Derek J. Clark
@ 2025-11-10 11:14 ` Ilpo Järvinen
2025-11-11 5:17 ` Mario Limonciello
0 siblings, 1 reply; 7+ messages in thread
From: Ilpo Järvinen @ 2025-11-10 11:14 UTC (permalink / raw)
To: Derek J. Clark, Mario Limonciello, Hans de Goede
Cc: Armin Wolf, Len Brown, Rafael J . Wysocki, Jonathan Corbet,
Zhixin Zhang, Mia Shao, Mark Pearson, Pierre-Loup A . Griffais,
Kurt Borja, platform-driver-x86, linux-doc, LKML, linux-acpi
On Thu, 6 Nov 2025, Derek J. Clark wrote:
> Some devices, namely Lenovo Legion devices, have an "extreme" mode where
> power draw is at the maximum limit of the cooling hardware. Add a new
> "extreme" platform profile to properly reflect this operating mode.
>
> Reviewed-by: Mario Limonciello (AMD) <superm1@kernel.org>
> Acked-by: Rafael J. Wysocki (Intel) <rafael@kernel.org>
> Signed-off-by: Derek J. Clark <derekjohn.clark@gmail.com>
> ---
> Documentation/ABI/testing/sysfs-class-platform-profile | 2 ++
> drivers/acpi/platform_profile.c | 1 +
> include/linux/platform_profile.h | 1 +
> 3 files changed, 4 insertions(+)
>
> diff --git a/Documentation/ABI/testing/sysfs-class-platform-profile b/Documentation/ABI/testing/sysfs-class-platform-profile
> index dc72adfb830a..9bee8deb4dc9 100644
> --- a/Documentation/ABI/testing/sysfs-class-platform-profile
> +++ b/Documentation/ABI/testing/sysfs-class-platform-profile
> @@ -23,6 +23,8 @@ Description: This file contains a space-separated list of profiles supported
> power consumption with a slight bias
> towards performance
> performance High performance operation
> + extreme Higher performance operation that may exceed
> + internal battery draw limits when on AC power
> custom Driver defined custom profile
> ==================== ========================================
>
> diff --git a/drivers/acpi/platform_profile.c b/drivers/acpi/platform_profile.c
> index b43f4459a4f6..78da17e16d9b 100644
> --- a/drivers/acpi/platform_profile.c
> +++ b/drivers/acpi/platform_profile.c
> @@ -37,6 +37,7 @@ static const char * const profile_names[] = {
> [PLATFORM_PROFILE_BALANCED] = "balanced",
> [PLATFORM_PROFILE_BALANCED_PERFORMANCE] = "balanced-performance",
> [PLATFORM_PROFILE_PERFORMANCE] = "performance",
> + [PLATFORM_PROFILE_EXTREME] = "extreme",
> [PLATFORM_PROFILE_CUSTOM] = "custom",
> };
> static_assert(ARRAY_SIZE(profile_names) == PLATFORM_PROFILE_LAST);
> diff --git a/include/linux/platform_profile.h b/include/linux/platform_profile.h
> index a299225ab92e..2bf178bde2b5 100644
> --- a/include/linux/platform_profile.h
> +++ b/include/linux/platform_profile.h
> @@ -24,6 +24,7 @@ enum platform_profile_option {
> PLATFORM_PROFILE_BALANCED,
> PLATFORM_PROFILE_BALANCED_PERFORMANCE,
> PLATFORM_PROFILE_PERFORMANCE,
> + PLATFORM_PROFILE_EXTREME,
> PLATFORM_PROFILE_CUSTOM,
> PLATFORM_PROFILE_LAST, /*must always be last */
> };
>
I wonder if "extreme" is the best name for this? Given the description you
gave above, perhaps "max-power" would be more descriptive (and we already
have "low-power" so it kind of feels fitting the theme too).
I don't have strong opinion on this so if you guys feel this suggestion
would not make things better, feel free to voice it. :-)
--
i.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option
2025-11-10 11:14 ` Ilpo Järvinen
@ 2025-11-11 5:17 ` Mario Limonciello
2025-11-12 21:10 ` Derek J. Clark
0 siblings, 1 reply; 7+ messages in thread
From: Mario Limonciello @ 2025-11-11 5:17 UTC (permalink / raw)
To: Ilpo Järvinen, Derek J. Clark, Hans de Goede
Cc: Armin Wolf, Len Brown, Rafael J . Wysocki, Jonathan Corbet,
Zhixin Zhang, Mia Shao, Mark Pearson, Pierre-Loup A . Griffais,
Kurt Borja, platform-driver-x86, linux-doc, LKML, linux-acpi
On 11/10/25 5:14 AM, Ilpo Järvinen wrote:
> On Thu, 6 Nov 2025, Derek J. Clark wrote:
>
>> Some devices, namely Lenovo Legion devices, have an "extreme" mode where
>> power draw is at the maximum limit of the cooling hardware. Add a new
>> "extreme" platform profile to properly reflect this operating mode.
>>
>> Reviewed-by: Mario Limonciello (AMD) <superm1@kernel.org>
>> Acked-by: Rafael J. Wysocki (Intel) <rafael@kernel.org>
>> Signed-off-by: Derek J. Clark <derekjohn.clark@gmail.com>
>> ---
>> Documentation/ABI/testing/sysfs-class-platform-profile | 2 ++
>> drivers/acpi/platform_profile.c | 1 +
>> include/linux/platform_profile.h | 1 +
>> 3 files changed, 4 insertions(+)
>>
>> diff --git a/Documentation/ABI/testing/sysfs-class-platform-profile b/Documentation/ABI/testing/sysfs-class-platform-profile
>> index dc72adfb830a..9bee8deb4dc9 100644
>> --- a/Documentation/ABI/testing/sysfs-class-platform-profile
>> +++ b/Documentation/ABI/testing/sysfs-class-platform-profile
>> @@ -23,6 +23,8 @@ Description: This file contains a space-separated list of profiles supported
>> power consumption with a slight bias
>> towards performance
>> performance High performance operation
>> + extreme Higher performance operation that may exceed
>> + internal battery draw limits when on AC power
>> custom Driver defined custom profile
>> ==================== ========================================
>>
>> diff --git a/drivers/acpi/platform_profile.c b/drivers/acpi/platform_profile.c
>> index b43f4459a4f6..78da17e16d9b 100644
>> --- a/drivers/acpi/platform_profile.c
>> +++ b/drivers/acpi/platform_profile.c
>> @@ -37,6 +37,7 @@ static const char * const profile_names[] = {
>> [PLATFORM_PROFILE_BALANCED] = "balanced",
>> [PLATFORM_PROFILE_BALANCED_PERFORMANCE] = "balanced-performance",
>> [PLATFORM_PROFILE_PERFORMANCE] = "performance",
>> + [PLATFORM_PROFILE_EXTREME] = "extreme",
>> [PLATFORM_PROFILE_CUSTOM] = "custom",
>> };
>> static_assert(ARRAY_SIZE(profile_names) == PLATFORM_PROFILE_LAST);
>> diff --git a/include/linux/platform_profile.h b/include/linux/platform_profile.h
>> index a299225ab92e..2bf178bde2b5 100644
>> --- a/include/linux/platform_profile.h
>> +++ b/include/linux/platform_profile.h
>> @@ -24,6 +24,7 @@ enum platform_profile_option {
>> PLATFORM_PROFILE_BALANCED,
>> PLATFORM_PROFILE_BALANCED_PERFORMANCE,
>> PLATFORM_PROFILE_PERFORMANCE,
>> + PLATFORM_PROFILE_EXTREME,
>> PLATFORM_PROFILE_CUSTOM,
>> PLATFORM_PROFILE_LAST, /*must always be last */
>> };
>>
>
> I wonder if "extreme" is the best name for this? Given the description you
> gave above, perhaps "max-power" would be more descriptive (and we already
> have "low-power" so it kind of feels fitting the theme too).
>
> I don't have strong opinion on this so if you guys feel this suggestion
> would not make things better, feel free to voice it. :-)
>
I don't feel strongly here, either sound find to me.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option
2025-11-11 5:17 ` Mario Limonciello
@ 2025-11-12 21:10 ` Derek J. Clark
0 siblings, 0 replies; 7+ messages in thread
From: Derek J. Clark @ 2025-11-12 21:10 UTC (permalink / raw)
To: Mario Limonciello, Ilpo Järvinen, Hans de Goede
Cc: Armin Wolf, Len Brown, Rafael J . Wysocki, Jonathan Corbet,
Zhixin Zhang, Mia Shao, Mark Pearson, Pierre-Loup A . Griffais,
Kurt Borja, platform-driver-x86, linux-doc, LKML, linux-acpi
On November 10, 2025 9:17:12 PM PST, Mario Limonciello <superm1@kernel.org> wrote:
>
>
>On 11/10/25 5:14 AM, Ilpo Järvinen wrote:
>> On Thu, 6 Nov 2025, Derek J. Clark wrote:
>>
>>> Some devices, namely Lenovo Legion devices, have an "extreme" mode where
>>> power draw is at the maximum limit of the cooling hardware. Add a new
>>> "extreme" platform profile to properly reflect this operating mode.
>>>
>>> Reviewed-by: Mario Limonciello (AMD) <superm1@kernel.org>
>>> Acked-by: Rafael J. Wysocki (Intel) <rafael@kernel.org>
>>> Signed-off-by: Derek J. Clark <derekjohn.clark@gmail.com>
>>> ---
>>> Documentation/ABI/testing/sysfs-class-platform-profile | 2 ++
>>> drivers/acpi/platform_profile.c | 1 +
>>> include/linux/platform_profile.h | 1 +
>>> 3 files changed, 4 insertions(+)
>>>
>>> diff --git a/Documentation/ABI/testing/sysfs-class-platform-profile b/Documentation/ABI/testing/sysfs-class-platform-profile
>>> index dc72adfb830a..9bee8deb4dc9 100644
>>> --- a/Documentation/ABI/testing/sysfs-class-platform-profile
>>> +++ b/Documentation/ABI/testing/sysfs-class-platform-profile
>>> @@ -23,6 +23,8 @@ Description: This file contains a space-separated list of profiles supported
>>> power consumption with a slight bias
>>> towards performance
>>> performance High performance operation
>>> + extreme Higher performance operation that may exceed
>>> + internal battery draw limits when on AC power
>>> custom Driver defined custom profile
>>> ==================== ========================================
>>> diff --git a/drivers/acpi/platform_profile.c b/drivers/acpi/platform_profile.c
>>> index b43f4459a4f6..78da17e16d9b 100644
>>> --- a/drivers/acpi/platform_profile.c
>>> +++ b/drivers/acpi/platform_profile.c
>>> @@ -37,6 +37,7 @@ static const char * const profile_names[] = {
>>> [PLATFORM_PROFILE_BALANCED] = "balanced",
>>> [PLATFORM_PROFILE_BALANCED_PERFORMANCE] = "balanced-performance",
>>> [PLATFORM_PROFILE_PERFORMANCE] = "performance",
>>> + [PLATFORM_PROFILE_EXTREME] = "extreme",
>>> [PLATFORM_PROFILE_CUSTOM] = "custom",
>>> };
>>> static_assert(ARRAY_SIZE(profile_names) == PLATFORM_PROFILE_LAST);
>>> diff --git a/include/linux/platform_profile.h b/include/linux/platform_profile.h
>>> index a299225ab92e..2bf178bde2b5 100644
>>> --- a/include/linux/platform_profile.h
>>> +++ b/include/linux/platform_profile.h
>>> @@ -24,6 +24,7 @@ enum platform_profile_option {
>>> PLATFORM_PROFILE_BALANCED,
>>> PLATFORM_PROFILE_BALANCED_PERFORMANCE,
>>> PLATFORM_PROFILE_PERFORMANCE,
>>> + PLATFORM_PROFILE_EXTREME,
>>> PLATFORM_PROFILE_CUSTOM,
>>> PLATFORM_PROFILE_LAST, /*must always be last */
>>> };
>>>
>>
>> I wonder if "extreme" is the best name for this? Given the description you
>> gave above, perhaps "max-power" would be more descriptive (and we already
>> have "low-power" so it kind of feels fitting the theme too).
>>
>> I don't have strong opinion on this so if you guys feel this suggestion
>> would not make things better, feel free to voice it. :-)
>>
>
>I don't feel strongly here, either sound find to me.
>
Fine with me. Extreme is the vendor (marketing) specific phrase but the low/max-power symmetry is nicer. I'll try to spin a v3 today or tomorrow.
Thanks,
Derek
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-11-12 21:10 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-06 21:21 [PATCH v2 0/3] Add extreme platform profile Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 1/3] acpi: platform_profile - Add Extreme profile option Derek J. Clark
2025-11-10 11:14 ` Ilpo Järvinen
2025-11-11 5:17 ` Mario Limonciello
2025-11-12 21:10 ` Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 2/3] platform/x86: lenovo-wmi-gamezone Use extreme rather than balanced-performance Derek J. Clark
2025-11-06 21:21 ` [PATCH v2 3/3] platform/x86: wmi-gamezone: Add Legion Go 2 Quirks Derek J. Clark
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).