Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

intel-hid: fix volume buttons on Thinkpad X12 Detachable Tablet Gen 1

Volume buttons on Lenovo Thinkpad X12 Detachable Tablet Gen 1 did not
send any input events when pressed. When loading intel-hid with the 5
Button Array explicitly enabled, the buttons functioned normally.

Adds the X12 Detachable Tablet Gen 1 to the `button_array_table`.

However, the driver is unable to call INTEL_HID_DSM_BTNE_FN and prints
the warning "failed to set button capability" when attempting to enable
or disable the 5 Button Array. The warning should be harmless and
adding more special handling to avoid it is not worth it.

Co-developed-by: Mary Strodl <mstrodl@csh.rit.edu>
Signed-off-by: Mary Strodl <mstrodl@csh.rit.edu>
Signed-off-by: Cole Stowell <cole@stowell.pro>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20241107205908.69279-1-cole@stowell.pro
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

authored by

Cole Stowell and committed by
Ilpo Järvinen
75a978bd 0d5e2d9b

+7
+7
drivers/platform/x86/intel/hid.c
··· 119 119 }, 120 120 }, 121 121 { 122 + .ident = "Lenovo ThinkPad X1 Tablet Gen 1", 123 + .matches = { 124 + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), 125 + DMI_MATCH(DMI_PRODUCT_FAMILY, "ThinkPad X12 Detachable Gen 1"), 126 + }, 127 + }, 128 + { 122 129 .ident = "Lenovo ThinkPad X1 Tablet Gen 2", 123 130 .matches = { 124 131 DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),