The old three KEY_KBDILLUM* keycodes don't reflect the current situationNevermind the KEY_KBDILLUMCHANGE. I just found out there is already a way to communicate this from kernel to userspace via sysfs https://docs.kernel.org/leds/leds-class.html#led-registration-api -> brightness_hw_changed
modern notebooks anymore. Especially the ones with RGB keyboards.
e.g.
- Clevo NL50NU has a toggle, an up, a down and a color-cycle key
- TongFang PH4ARX1 doesn't have a toggle key, but one that cycles through
off, half-brightness, and full-brightness.
Also, on some devices these keys are already implemented in firmware. It
would still be nice if there is a way to let userspace know when one of
these keys is pressed to display the OSD, but don't advice it to actually
do anything. This is the intended purpose of the KEY_KBDILLUMCHANGE define.
Signed-off-by: Werner Sembach <wse@xxxxxxxxxxxxxxxxxxx>
---
include/uapi/linux/input-event-codes.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/include/uapi/linux/input-event-codes.h b/include/uapi/linux/input-event-codes.h
index 022a520e31fc2..05287bf9a77f7 100644
--- a/include/uapi/linux/input-event-codes.h
+++ b/include/uapi/linux/input-event-codes.h
@@ -803,6 +803,10 @@
#define BTN_TRIGGER_HAPPY39 0x2e6
#define BTN_TRIGGER_HAPPY40 0x2e7
+#define KEY_KBDILLUMCYCLE 0x2e8
+#define KEY_KBDILLUMCOLORCYCLE 0x2e9
+#define KEY_KBDILLUMCHANGE 0x2ea
+
/* We avoid low common keys in module aliases so they don't get huge. */
#define KEY_MIN_INTERESTING KEY_MUTE
#define KEY_MAX 0x2ff