ACPI: platform_profile: Add concept of a "custom" profile
authorMario Limonciello <mario.limonciello@amd.com>
Fri, 6 Dec 2024 03:19:12 +0000 (21:19 -0600)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Tue, 10 Dec 2024 17:18:11 +0000 (19:18 +0200)
When two profile handlers don't agree on the current profile it's ambiguous
what to show to the legacy sysfs interface.

Add a "custom" profile string that userspace will be able to use the legacy
sysfs interface to distinguish this situation..

Additionally drivers can choose to use this to indicate that a user has
modified driver settings in a way that the platform profile advertised by
a driver is not accurate.

Reviewed-by: Armin Wolf <W_Armin@gmx.de>
Tested-by: Mark Pearson <mpearson-lenovo@squebb.ca>
Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Link: https://lore.kernel.org/r/20241206031918.1537-17-mario.limonciello@amd.com
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/acpi/platform_profile.c
include/linux/platform_profile.h

index bdf69255ed9ca12bfd551a2c266f33df61b0aa13..54483269b88344966c503ecafa97837204d5633d 100644 (file)
@@ -20,6 +20,7 @@ static const char * const profile_names[] = {
        [PLATFORM_PROFILE_BALANCED] = "balanced",
        [PLATFORM_PROFILE_BALANCED_PERFORMANCE] = "balanced-performance",
        [PLATFORM_PROFILE_PERFORMANCE] = "performance",
+       [PLATFORM_PROFILE_CUSTOM] = "custom",
 };
 static_assert(ARRAY_SIZE(profile_names) == PLATFORM_PROFILE_LAST);
 
index a888fd085c5130b8f4a2bc984a5523cf472264ac..0682bb4c57e5d690faa211bf205b4f4f5ef15794 100644 (file)
@@ -23,6 +23,7 @@ enum platform_profile_option {
        PLATFORM_PROFILE_BALANCED,
        PLATFORM_PROFILE_BALANCED_PERFORMANCE,
        PLATFORM_PROFILE_PERFORMANCE,
+       PLATFORM_PROFILE_CUSTOM,
        PLATFORM_PROFILE_LAST, /*must always be last */
 };