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

Commit 24bb555e authored by Aaron Ma's avatar Aaron Ma Committed by Dmitry Torokhov
Browse files

Input: elantech - enable middle button of touchpads on ThinkPad P52



PNPID is better way to identify the type of touchpads.
Enable middle button support on 2 types of touchpads on Lenovo P52.

Cc: stable@vger.kernel.org
Signed-off-by: default avatarAaron Ma <aaron.ma@canonical.com>
Reviewed-by: default avatarBenjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 01f7e67a
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -1175,6 +1175,12 @@ static const struct dmi_system_id elantech_dmi_has_middle_button[] = {
	{ }
};

static const char * const middle_button_pnp_ids[] = {
	"LEN2131", /* ThinkPad P52 w/ NFC */
	"LEN2132", /* ThinkPad P52 */
	NULL
};

/*
 * Set the appropriate event bits for the input subsystem
 */
@@ -1194,7 +1200,8 @@ static int elantech_set_input_params(struct psmouse *psmouse)
	__clear_bit(EV_REL, dev->evbit);

	__set_bit(BTN_LEFT, dev->keybit);
	if (dmi_check_system(elantech_dmi_has_middle_button))
	if (dmi_check_system(elantech_dmi_has_middle_button) ||
			psmouse_matches_pnp_id(psmouse, middle_button_pnp_ids))
		__set_bit(BTN_MIDDLE, dev->keybit);
	__set_bit(BTN_RIGHT, dev->keybit);