Re: [PATCH 3/3] platform/x86: uniwill-laptop: Map the screen rotation key

From: Christoffer Sandberg

Date: Thu Oct 01 2026 - 05:12:40 EST




On 30.9.2026 01:22, Werner Sembach wrote:
Am 26.09.26 um 01:52 schrieb Armin Wolf:
Am 25.09.26 um 23:16 schrieb Mohamed Jouini:

The PCSpecialist Recoil 16 AMD / TUXEDO Stellaris 16 Gen7 chassis has an
"Sc" key next to F12, meant to rotate the lay-flat screen by 180 degrees.
It reports WMI event 0xD0, which is currently reported as KEY_UNKNOWN.
Map it to KEY_ROTATE_DISPLAY.

Unless Tuxedo know more about this event code:
don't have the device at hand so pulled christoffer in the loop

As far as I know we do not have any device with this mapping. So, no objection ;)


Reviewed-by: Armin Wolf <W_Armin@xxxxxx>

Signed-off-by: Mohamed Jouini <amad3v@xxxxxxxxx>
---
  drivers/platform/x86/uniwill/uniwill-acpi.c | 3 +++
  drivers/platform/x86/uniwill/uniwill-wmi.h  | 3 +++
  2 files changed, 6 insertions(+)

diff --git a/drivers/platform/x86/uniwill/uniwill-acpi.c b/drivers/platform/x86/uniwill/uniwill-acpi.c
index 0932e5937..f99c5e9ac 100644
--- a/drivers/platform/x86/uniwill/uniwill-acpi.c
+++ b/drivers/platform/x86/uniwill/uniwill-acpi.c
@@ -519,6 +519,9 @@ static const struct key_entry uniwill_keymap[] = {
      /* Reported when the user wants to toggle the webcam */
      { KE_IGNORE,    UNIWILL_OSD_WEBCAM_TOGGLE,              { KEY_UNKNOWN }},
  +    /* Reported when the user wants to rotate the (lay-flat) screen by 180 degrees */
+    { KE_KEY,       UNIWILL_OSD_ROTATE_SCREEN,              { KEY_ROTATE_DISPLAY }},
+
      { KE_END }
  };
  diff --git a/drivers/platform/x86/uniwill/uniwill-wmi.h b/drivers/platform/x86/uniwill/uniwill-wmi.h
index b25b2f312..1b6f650c4 100644
--- a/drivers/platform/x86/uniwill/uniwill-wmi.h
+++ b/drivers/platform/x86/uniwill/uniwill-wmi.h
@@ -117,6 +117,9 @@
    #define UNIWILL_OSD_WEBCAM_TOGGLE        0xCF
  +/* "Sc" key next to F12 on the PCSpecialist Recoil 16 / Stellaris 16 Gen7 */
+#define UNIWILL_OSD_ROTATE_SCREEN        0xD0
+
  #define UNIWILL_OSD_KBD_BACKLIGHT_CHANGED    0xF0
    struct device;