Commit 563b3f6e authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull input fixes from Dmitry Torokhov:

 - a quirk to i8042 for yet another TUXEDO laptop

 - a fix to mtk-pmic-keys driver to properly handle MT6359

 - a fix to iqs7222 driver to only enable proximity interrupt
   if it is mapped to a key or a switch event

 - an update to xpad controller driver to recognize Flydigi Apex 5
   controller

 - an update to maintainers file to drop bounding entry for Melfas
   touch controller

* tag 'input-for-v6.17-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  MAINTAINERS: Input: Drop melfas-mip4 section
  Input: mtk-pmic-keys - MT6359 has a specific release irq
  Input: i8042 - add TUXEDO InfinityBook Pro Gen10 AMD to i8042 quirk table
  Input: iqs7222 - avoid enabling unused interrupts
  Input: xpad - add support for Flydigi Apex 5
parents f83a4f2a 30989f67
Loading
Loading
Loading
Loading
+0 −7
Original line number Diff line number Diff line
@@ -15748,13 +15748,6 @@ S: Supported
W:	http://www.melexis.com
F:	drivers/iio/temperature/mlx90635.c
MELFAS MIP4 TOUCHSCREEN DRIVER
M:	Sangwon Jee <jeesw@melfas.com>
S:	Supported
W:	http://www.melfas.com
F:	Documentation/devicetree/bindings/input/touchscreen/melfas_mip4.txt
F:	drivers/input/touchscreen/melfas_mip4.c
MELLANOX BLUEFIELD I2C DRIVER
M:	Khalil Blaiech <kblaiech@nvidia.com>
M:	Asmaa Mnebhi <asmaa@nvidia.com>
+2 −0
Original line number Diff line number Diff line
@@ -422,6 +422,7 @@ static const struct xpad_device {
	{ 0x3537, 0x1010, "GameSir G7 SE", 0, XTYPE_XBOXONE },
	{ 0x366c, 0x0005, "ByoWave Proteus Controller", MAP_SHARE_BUTTON, XTYPE_XBOXONE, FLAG_DELAY_INIT },
	{ 0x3767, 0x0101, "Fanatec Speedster 3 Forceshock Wheel", 0, XTYPE_XBOX },
	{ 0x37d7, 0x2501, "Flydigi Apex 5", 0, XTYPE_XBOX360 },
	{ 0x413d, 0x2104, "Black Shark Green Ghost Gamepad", 0, XTYPE_XBOX360 },
	{ 0xffff, 0xffff, "Chinese-made Xbox Controller", 0, XTYPE_XBOX },
	{ 0x0000, 0x0000, "Generic X-Box pad", 0, XTYPE_UNKNOWN }
@@ -578,6 +579,7 @@ static const struct usb_device_id xpad_table[] = {
	XPAD_XBOX360_VENDOR(0x3537),		/* GameSir Controllers */
	XPAD_XBOXONE_VENDOR(0x3537),		/* GameSir Controllers */
	XPAD_XBOXONE_VENDOR(0x366c),		/* ByoWave controllers */
	XPAD_XBOX360_VENDOR(0x37d7),		/* Flydigi Controllers */
	XPAD_XBOX360_VENDOR(0x413d),		/* Black Shark Green Ghost Controller */
	{ }
};
+4 −1
Original line number Diff line number Diff line
@@ -55,6 +55,7 @@ struct mtk_pmic_regs {
	const struct mtk_pmic_keys_regs keys_regs[MTK_PMIC_MAX_KEY_COUNT];
	u32 pmic_rst_reg;
	u32 rst_lprst_mask; /* Long-press reset timeout bitmask */
	bool key_release_irq;
};

static const struct mtk_pmic_regs mt6397_regs = {
@@ -116,6 +117,7 @@ static const struct mtk_pmic_regs mt6358_regs = {
				   MTK_PMIC_HOMEKEY_RST),
	.pmic_rst_reg = MT6358_TOP_RST_MISC,
	.rst_lprst_mask = MTK_PMIC_RST_DU_MASK,
	.key_release_irq = true,
};

static const struct mtk_pmic_regs mt6359_regs = {
@@ -129,6 +131,7 @@ static const struct mtk_pmic_regs mt6359_regs = {
				   MTK_PMIC_HOMEKEY_RST),
	.pmic_rst_reg = MT6359_TOP_RST_MISC,
	.rst_lprst_mask = MTK_PMIC_RST_DU_MASK,
	.key_release_irq = true,
};

struct mtk_pmic_keys_info {
@@ -368,7 +371,7 @@ static int mtk_pmic_keys_probe(struct platform_device *pdev)
		if (keys->keys[index].irq < 0)
			return keys->keys[index].irq;

		if (of_device_is_compatible(node, "mediatek,mt6358-keys")) {
		if (mtk_pmic_regs->key_release_irq) {
			keys->keys[index].irq_r = platform_get_irq_byname(pdev,
									  irqnames_r[index]);

+3 −0
Original line number Diff line number Diff line
@@ -2427,6 +2427,9 @@ static int iqs7222_parse_chan(struct iqs7222_private *iqs7222,
		if (error)
			return error;

		if (!iqs7222->kp_type[chan_index][i])
			continue;

		if (!dev_desc->event_offset)
			continue;

+14 −0
Original line number Diff line number Diff line
@@ -1155,6 +1155,20 @@ static const struct dmi_system_id i8042_dmi_quirk_table[] __initconst = {
		.driver_data = (void *)(SERIO_QUIRK_NOMUX | SERIO_QUIRK_RESET_ALWAYS |
					SERIO_QUIRK_NOLOOP | SERIO_QUIRK_NOPNP)
	},
	{
		.matches = {
			DMI_MATCH(DMI_BOARD_NAME, "XxHP4NAx"),
		},
		.driver_data = (void *)(SERIO_QUIRK_NOMUX | SERIO_QUIRK_RESET_ALWAYS |
					SERIO_QUIRK_NOLOOP | SERIO_QUIRK_NOPNP)
	},
	{
		.matches = {
			DMI_MATCH(DMI_BOARD_NAME, "XxKK4NAx_XxSP4NAx"),
		},
		.driver_data = (void *)(SERIO_QUIRK_NOMUX | SERIO_QUIRK_RESET_ALWAYS |
					SERIO_QUIRK_NOLOOP | SERIO_QUIRK_NOPNP)
	},
	/*
	 * A lot of modern Clevo barebones have touchpad and/or keyboard issues
	 * after suspend fixable with the forcenorestore quirk.