]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
Input: Add keycodes for electronic privacy screen on/off hotkeys
authorHans de Goede <hansg@kernel.org>
Mon, 20 Oct 2025 15:23:30 +0000 (17:23 +0200)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Tue, 28 Oct 2025 15:11:57 +0000 (17:11 +0200)
commit8f3eaad9812f62e7006ad08602444b32c3101824
treef5d1b3f76b18b6bdccc74eaccb4f4a808f6a5546
parent7f7d28c69eda3692bcf102b7096b93fd45c75b1d
Input: Add keycodes for electronic privacy screen on/off hotkeys

Add keycodes for hotkeys toggling the electronic privacy screen found on
some laptops on/off.

There already is an API for eprivacy screens as kernel-mode-setting drm
connector object properties:
https://www.kernel.org/doc/html/latest/gpu/drm-kms.html#standard-connector-properties

this API also supports reporting when the eprivacy screen is turned on/off
by the embedded-controller (EC) in response to hotkey presses.

But on some laptops (e.g. the Dell Latitude 7300) the firmware does not
allow querying the presence nor the status of the eprivacy screen at boot.
This makes it impossible to implement the drm connector properties API
since drm objects do not allow adding new properties after creation and
the presence of the eprivacy cannot be detected at boot.

The first notice of the presence of an eprivacy screen on these laptops is
an EC generated (WMI) event when the eprivacy screen hotkeys are pressed.

In this case the new keycodes this change adds can be generated to notify
userspace of the eprivacy screen on/off hotkeys being pressed, so that
userspace can show the usual on-screen-display (OSD) notification for eprivacy
screen on/off to the user. This is similar to how e.g. touchpad on/off
keycodes are used to show the touchpad on/off OSD.

Signed-off-by: Hans de Goede <hansg@kernel.org>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Link: https://patch.msgid.link/20251020152331.52870-2-hansg@kernel.org
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
include/uapi/linux/input-event-codes.h