mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v2] HID: input: map System Microphone Mute LED
       [not found] <20260904022903.607880-1-ait@ait.place>
@ 2026-09-04  4:47 ` Jonathan Jansen
  2026-09-11 15:58   ` Jiri Kosina
  0 siblings, 1 reply; 3+ messages in thread
From: Jonathan Jansen @ 2026-09-04  4:47 UTC (permalink / raw)
  To: linux-input
  Cc: linux-kernel, jikos, bentiss, dmitry.torokhov, linux-api, jonathanjansen

HUTRR110 defines LED page usage 0x57 as System Microphone Mute.

The usage is currently ignored, so the indicator stays dark and
userspace falls back to per-vendor code in hid-lenovo,
hid-playstation, hid-plantronics.

Map it to a new LED_MICMUTE. It appears as
/sys/class/leds/inputN::micmute and uses the "audio-micmute"
trigger from snd-ctl-led, so the LED follows the system-wide
mic mute state the same way LED_MUTE (page 0x09) already does
for speaker mute.

LED_MICMUTE takes the next free code (0x0b).

Link: https://www.usb.org/sites/default/files/hutrr110-systemmicrophonemute.pdf

Signed-off-by: Jonathan Jansen <jonathanjansen@ait.place>
---

Notes:
    Changes since v1: rewrote the commit message; no functional changes.

 drivers/hid/hid-debug.c                | 2 +-
 drivers/hid/hid-input.c                | 1 +
 drivers/input/input-leds.c             | 1 +
 include/uapi/linux/input-event-codes.h | 1 +
 4 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/hid/hid-debug.c b/drivers/hid/hid-debug.c
index f44e6e708..92a950105 100644
--- a/drivers/hid/hid-debug.c
+++ b/drivers/hid/hid-debug.c
@@ -3550,7 +3550,7 @@ static const char *leds[LED_MAX + 1] = {
 	[LED_KANA] = "Kana",		[LED_SLEEP] = "Sleep",
 	[LED_SUSPEND] = "Suspend",	[LED_MUTE] = "Mute",
 	[LED_MISC] = "Misc",		[LED_MAIL] = "Mail",
-	[LED_CHARGING] = "Charging",
+	[LED_CHARGING] = "Charging",	[LED_MICMUTE] = "Mic Mute",
 };
 
 static const char *repeats[REP_MAX + 1] = {
diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c
index edd6bbf83..727374dd5 100644
--- a/drivers/hid/hid-input.c
+++ b/drivers/hid/hid-input.c
@@ -990,6 +990,7 @@ static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_fiel
 		case 0x27:  map_led (LED_SLEEP);    break;    /*   "Stand-By"                 */
 		case 0x4c:  map_led (LED_SUSPEND);  break;    /*   "System Suspend"           */
 		case 0x09:  map_led (LED_MUTE);     break;    /*   "Mute"                     */
+		case 0x57:  map_led (LED_MICMUTE);  break;    /*   "System Microphone Mute"   */
 		case 0x4b:  map_led (LED_MISC);     break;    /*   "Generic Indicator"        */
 		case 0x19:  map_led (LED_MAIL);     break;    /*   "Message Waiting"          */
 		case 0x4d:  map_led (LED_CHARGING); break;    /*   "External Power Connected" */
diff --git a/drivers/input/input-leds.c b/drivers/input/input-leds.c
index b08d1d08d..6522079a4 100644
--- a/drivers/input/input-leds.c
+++ b/drivers/input/input-leds.c
@@ -36,6 +36,7 @@ static const struct {
 	[LED_SLEEP]	= { "sleep" } ,
 	[LED_SUSPEND]	= { "suspend" },
 	[LED_MUTE]	= { "mute", AUDIO_TRIGGER("audio-mute") },
+	[LED_MICMUTE]	= { "micmute", AUDIO_TRIGGER("audio-micmute") },
 	[LED_MISC]	= { "misc" },
 	[LED_MAIL]	= { "mail" },
 	[LED_CHARGING]	= { "charging" },
diff --git a/include/uapi/linux/input-event-codes.h b/include/uapi/linux/input-event-codes.h
index 3528168f7..bc374821c 100644
--- a/include/uapi/linux/input-event-codes.h
+++ b/include/uapi/linux/input-event-codes.h
@@ -983,6 +983,7 @@
 #define LED_MISC		0x08
 #define LED_MAIL		0x09
 #define LED_CHARGING		0x0a
+#define LED_MICMUTE		0x0b
 #define LED_MAX			0x0f
 #define LED_CNT			(LED_MAX+1)
 
-- 
2.55.0


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] HID: input: map System Microphone Mute LED
  2026-09-04  4:47 ` [PATCH v2] HID: input: map System Microphone Mute LED Jonathan Jansen
@ 2026-09-11 15:58   ` Jiri Kosina
  2026-09-11 16:36     ` Dmitry Torokhov
  0 siblings, 1 reply; 3+ messages in thread
From: Jiri Kosina @ 2026-09-11 15:58 UTC (permalink / raw)
  To: Jonathan Jansen
  Cc: linux-input, linux-kernel, bentiss, dmitry.torokhov, linux-api

On Fri, 4 Sep 2026, Jonathan Jansen wrote:

> HUTRR110 defines LED page usage 0x57 as System Microphone Mute.
> 
> The usage is currently ignored, so the indicator stays dark and
> userspace falls back to per-vendor code in hid-lenovo,
> hid-playstation, hid-plantronics.
> 
> Map it to a new LED_MICMUTE. It appears as
> /sys/class/leds/inputN::micmute and uses the "audio-micmute"
> trigger from snd-ctl-led, so the LED follows the system-wide
> mic mute state the same way LED_MUTE (page 0x09) already does
> for speaker mute.
> 
> LED_MICMUTE takes the next free code (0x0b).
> 
> Link: https://www.usb.org/sites/default/files/hutrr110-systemmicrophonemute.pdf
> 
> Signed-off-by: Jonathan Jansen <jonathanjansen@ait.place>
> ---
> 
> Notes:
>     Changes since v1: rewrote the commit message; no functional changes.
> 
>  drivers/hid/hid-debug.c                | 2 +-
>  drivers/hid/hid-input.c                | 1 +

Acked-by: Jiri Kosina <jkosina@suse.com>

for the drivers/hid changes.

Dmitry, will you take this through your tree, please?

Thanks,

-- 
Jiri Kosina
SUSE Labs


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] HID: input: map System Microphone Mute LED
  2026-09-11 15:58   ` Jiri Kosina
@ 2026-09-11 16:36     ` Dmitry Torokhov
  0 siblings, 0 replies; 3+ messages in thread
From: Dmitry Torokhov @ 2026-09-11 16:36 UTC (permalink / raw)
  To: Jiri Kosina
  Cc: Jonathan Jansen, linux-input, linux-kernel, bentiss, linux-api

On Fri, Sep 11, 2026 at 05:58:24PM +0200, Jiri Kosina wrote:
> On Fri, 4 Sep 2026, Jonathan Jansen wrote:
> 
> > HUTRR110 defines LED page usage 0x57 as System Microphone Mute.
> > 
> > The usage is currently ignored, so the indicator stays dark and
> > userspace falls back to per-vendor code in hid-lenovo,
> > hid-playstation, hid-plantronics.
> > 
> > Map it to a new LED_MICMUTE. It appears as
> > /sys/class/leds/inputN::micmute and uses the "audio-micmute"
> > trigger from snd-ctl-led, so the LED follows the system-wide
> > mic mute state the same way LED_MUTE (page 0x09) already does
> > for speaker mute.
> > 
> > LED_MICMUTE takes the next free code (0x0b).
> > 
> > Link: https://www.usb.org/sites/default/files/hutrr110-systemmicrophonemute.pdf
> > 
> > Signed-off-by: Jonathan Jansen <jonathanjansen@ait.place>
> > ---
> > 
> > Notes:
> >     Changes since v1: rewrote the commit message; no functional changes.
> > 
> >  drivers/hid/hid-debug.c                | 2 +-
> >  drivers/hid/hid-input.c                | 1 +
> 
> Acked-by: Jiri Kosina <jkosina@suse.com>
> 
> for the drivers/hid changes.
> 
> Dmitry, will you take this through your tree, please?

Hi Jiri, Jonathan,

Sorry but we should not add any new LED definitions to input since we
have proper LED subsystem now. The existing LED definitions are strictly
legacy now and input core has a bridge to LEDs (in input-leds.c).

I see we had similar submissions in '23 and '24 at the very least. I
should add a comment to that effect to input-event-codes.h.

Thanks.

-- 
Dmitry

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-09-11 16:37 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20260904022903.607880-1-ait@ait.place>
2026-09-04  4:47 ` [PATCH v2] HID: input: map System Microphone Mute LED Jonathan Jansen
2026-09-11 15:58   ` Jiri Kosina
2026-09-11 16:36     ` Dmitry Torokhov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®