Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7c46e236 authored by Arjan van de Ven's avatar Arjan van de Ven Committed by Dmitry Torokhov
Browse files

Input: i8042 - add a DMI table for the i8042.reset option



There are several DMI tables in the i8042 (keyboard) driver already, but
not one for the i8042.reset option.  This patch adds such an option.

Two users for this table are added as well, the MSI Wind U-100 and the LG
X110.  The MSI Wind also needs to be in the "don't trust the pnp data" for
the touchpad to work on my machine.

Signed-off-by: default avatarArjan van de Ven <arjan@linux.intel.com>
Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
parent 5ea2fc64
Loading
Loading
Loading
Loading
+28 −0
Original line number Original line Diff line number Diff line
@@ -377,6 +377,24 @@ static struct dmi_system_id __initdata i8042_dmi_nomux_table[] = {
	{ }
	{ }
};
};


static struct dmi_system_id __initdata i8042_dmi_reset_table[] = {
	{
		.ident = "MSI Wind U-100",
		.matches = {
			DMI_MATCH(DMI_BOARD_NAME, "U-100"),
			DMI_MATCH(DMI_BOARD_VENDOR, "MICRO-STAR INTERNATIONAL CO., LTD"),
		},
	},
	{
		.ident = "LG Electronics X110",
		.matches = {
			DMI_MATCH(DMI_BOARD_NAME, "X110"),
			DMI_MATCH(DMI_BOARD_VENDOR, "LG Electronics Inc."),
		},
	},
	{ }
};

#ifdef CONFIG_PNP
#ifdef CONFIG_PNP
static struct dmi_system_id __initdata i8042_dmi_nopnp_table[] = {
static struct dmi_system_id __initdata i8042_dmi_nopnp_table[] = {
	{
	{
@@ -386,6 +404,13 @@ static struct dmi_system_id __initdata i8042_dmi_nopnp_table[] = {
			DMI_MATCH(DMI_BOARD_VENDOR, "Intel Corporation"),
			DMI_MATCH(DMI_BOARD_VENDOR, "Intel Corporation"),
		},
		},
	},
	},
	{
		.ident = "MSI Wind U-100",
		.matches = {
			DMI_MATCH(DMI_BOARD_NAME, "U-100"),
			DMI_MATCH(DMI_BOARD_VENDOR, "MICRO-STAR INTERNATIONAL CO., LTD"),
		},
	},
	{ }
	{ }
};
};
#endif
#endif
@@ -698,6 +723,9 @@ static int __init i8042_platform_init(void)
#endif
#endif


#ifdef CONFIG_X86
#ifdef CONFIG_X86
	if (dmi_check_system(i8042_dmi_reset_table))
		i8042_reset = 1;

	if (dmi_check_system(i8042_dmi_noloop_table))
	if (dmi_check_system(i8042_dmi_noloop_table))
		i8042_noloop = 1;
		i8042_noloop = 1;