Commit 8599049a authored by Janne Grunau's avatar Janne Grunau Committed by Jiri Kosina
Browse files

HID: lenovo: Use KEY_PERFORMANCE instead of ACPI's platform_profile

Commit 84c9d2a9 ("HID: lenovo: Support for ThinkPad-X12-TAB-1/2 Kbd
Fn keys") added a dependency on ACPI's platform_profile. This should not
be done for generic USB devices as this prevents using the devices on
non ACPI devices like Apple silicon Macs and other non-ACPI arm64
systems. An attempt to allow using platform_profile on non-ACPI systems
was rejected in [1] and instead platform_profile was made to fail during
init in commit dd133162 ("ACPI: platform_profile: Avoid initializing
on non-ACPI platforms").
So remove the broken dependency and instead let's user space handle this
keycode by sending the new KEY_PERFORMANCE. Stable backport depends on
commit 89c52146 ("Input: add keycode for performance mode key").

[1]: https://lore.kernel.org/linux-acpi/CAJZ5v0icRdTSToaKbdf=MdRin4NyB2MstUVaQo8VR6-n7DkVMQ@mail.gmail.com/



Cc: regressions@lists.linux.dev
Cc: stable@vger.kernel.org
Fixes: 84c9d2a9 ("HID: lenovo: Support for ThinkPad-X12-TAB-1/2 Kbd Fn keys")
Signed-off-by: default avatarJanne Grunau <j@jannau.net>
Signed-off-by: default avatarJiri Kosina <jkosina@suse.com>
parent 12a0d410
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -597,8 +597,6 @@ config HID_LED

config HID_LENOVO
	tristate "Lenovo / Thinkpad devices"
	depends on ACPI
	select ACPI_PLATFORM_PROFILE
	select NEW_LEDS
	select LEDS_CLASS
	help
+1 −3
Original line number Diff line number Diff line
@@ -32,8 +32,6 @@
#include <linux/leds.h>
#include <linux/workqueue.h>

#include <linux/platform_profile.h>

#include "hid-ids.h"

/* Userspace expects F20 for mic-mute KEY_MICMUTE does not work */
@@ -734,7 +732,7 @@ static int lenovo_raw_event_TP_X12_tab(struct hid_device *hdev, u32 raw_data)
				report_key_event(input, KEY_RFKILL);
				return 1;
			}
			platform_profile_cycle();
			report_key_event(input, KEY_PERFORMANCE);
			return 1;
		case TP_X12_RAW_HOTKEY_FN_F10:
			/* TAB1 has PICKUP Phone and TAB2 use Snipping tool*/