RE: [PATCH 1/2] platform/x86: hp-wmi: Add camera toggle switch to HP WMI

From: Limonciello, Mario
Date: Tue Apr 25 2023 - 16:56:40 EST


[Public]



> -----Original Message-----
> From: Jonathan Singer <jes965@xxxxxxx>
> Sent: Tuesday, April 25, 2023 15:47
> To: platform-driver-x86@xxxxxxxxxxxxxxx
> Cc: Jonathan Singer <jes965@xxxxxxx>; Hans de Goede
> <hdegoede@xxxxxxxxxx>; Mark Gross <markgross@xxxxxxxxxx>; Jorge
> Lopez <jorge.lopez2@xxxxxx>; Kai-Heng Feng
> <kai.heng.feng@xxxxxxxxxxxxx>; Rishit Bansal <rishitbansal0@xxxxxxxxx>;
> Limonciello, Mario <Mario.Limonciello@xxxxxxx>; Barnabás Pőcze
> <pobrn@xxxxxxxxxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx
> Subject: [PATCH 1/2] platform/x86: hp-wmi: Add camera toggle switch to HP
> WMI
>
> Previously, when the camera toggle switch was hit, the hp-wmi driver
> would report an invalid event code. By adding a case for that in the
> event handling switch statement we can eliminate that error code and
> enable a framework for potential further kernel handling of that key.
> This change was tested on my HP Envy x360 15-ey0023dx laptop, but it
> would likely work for any HP laptop with a camera toggle button.
>

Any idea what does the key actually do on Windows? Is it just for software
to show a message? Or some software respond to it?

The reason I'm asking is I wonder if you want this to be emitting KEY_CAMERA
instead perhaps.

Then desktop environments that support it can respond to KEY_CAMERA.

> Signed-off-by: Jonathan Singer <jes965@xxxxxxx>
> ---
> drivers/platform/x86/hp/hp-wmi.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/platform/x86/hp/hp-wmi.c
> b/drivers/platform/x86/hp/hp-wmi.c
> index 873f59c3e280..b27362209b04 100644
> --- a/drivers/platform/x86/hp/hp-wmi.c
> +++ b/drivers/platform/x86/hp/hp-wmi.c
> @@ -90,6 +90,7 @@ enum hp_wmi_event_ids {
> HPWMI_PEAKSHIFT_PERIOD = 0x0F,
> HPWMI_BATTERY_CHARGE_PERIOD = 0x10,
> HPWMI_SANITIZATION_MODE = 0x17,
> + HPWMI_CAMERA_TOGGLE = 0x1A,
> HPWMI_OMEN_KEY = 0x1D,
> HPWMI_SMART_EXPERIENCE_APP = 0x21,
> };
> @@ -866,6 +867,8 @@ static void hp_wmi_notify(u32 value, void *context)
> break;
> case HPWMI_SANITIZATION_MODE:
> break;
> + case HPWMI_CAMERA_TOGGLE:
> + break;
> case HPWMI_SMART_EXPERIENCE_APP:
> break;
> default:
> --
> 2.40.0