Input: i8042 - merge quirk tables
stable inclusion from stable-v5.10.168 commit 04d99a0a966a4f3b901e3fa762114895aa994ea3 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I7URR4 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=04d99a0a966a4f3b901e3fa762114895aa994ea3 ---------------------------------------------------- [ Upstream commit ff946268 ] 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> Stable-dep-of: 9c445d26 ("Input: i8042 - add Clevo PCX0DX to i8042 quirk table") Signed-off-by:
Sasha Levin <sashal@kernel.org> Signed-off-by:
zhaoxiaoqiang11 <zhaoxiaoqiang11@jd.com>
Loading
Please sign in to comment