]> git.baikalelectronics.ru Git - kernel.git/commit
Input: i8042 - merge quirk tables
authorWerner Sembach <wse@tuxedocomputers.com>
Thu, 30 Jun 2022 00:38:07 +0000 (17:38 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 30 Jun 2022 00:41:06 +0000 (17:41 -0700)
commit85ec1ccb684aba4f33cab612a7c72f3192006b25
treeb602eb96a76832b20efe1b552ee61b910b19a481
parent8b9424d34d1123de6659355809f6001896f75533
Input: i8042 - merge quirk tables

Merge i8042 quirk tables to reduce code duplication for devices that need
more than one quirk. Before every quirk had its own table with devices
needing that quirk. If a new quirk needed to be added a new table had to
be created. When a device needed multiple quirks, it appeared in multiple
tables. Now only one table called i8042_dmi_quirk_table exists. In it every
device has one entry and required quirks are coded in the .driver_data
field of the struct dmi_system_id used by this table. Multiple quirks for
one device can be applied by bitwise-or of the new SERIO_QUIRK_* defines.

Also align quirkable options with command line parameters and make vendor
wide quirks per device overwriteable on a per device basis. The first match
is honored while following matches are ignored. So when a vendor wide quirk
is defined in the table, a device can inserted before and therefore
ignoring the vendor wide define.

Signed-off-by: Werner Sembach <wse@tuxedocomputers.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20220629112725.12922-3-wse@tuxedocomputers.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/serio/i8042-x86ia64io.h