[PATCH v2 7/7] platform/x86: ideapad-laptop: Don't expose touchpad attr on IdeaPads with SYNA2B33

From: Eray Orçunus
Date: Sat Oct 29 2022 - 08:05:06 EST


My 520-15IKB (2017) with SYNA2B33 doesn't have working VPCCMD_W_TOUCHPAD command -
it's the touchpad program switches the touchpad instead on Windows. Considering
all IdeaPads with SYNA2B33 touchpad produced in 2017/2018, it's very likely that
none of the IdeaPads with SYNA2B33 support touchpad switching via EC. So let's
add SYNA2B33 to the touchpads not switchable via EC.

Signed-off-by: Eray Orçunus <erayorcunus@xxxxxxxxx>
---
drivers/platform/x86/ideapad-laptop.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c
index b34fbc4d741c..937126c62a14 100644
--- a/drivers/platform/x86/ideapad-laptop.c
+++ b/drivers/platform/x86/ideapad-laptop.c
@@ -1621,8 +1621,12 @@ static void ideapad_check_features(struct ideapad_private *priv)
"Could not find PCI* node in the namespace\n");
}

- /* Most ideapads with ELAN0634 touchpad don't use EC touchpad switch */
- priv->features.touchpad_ctrl_via_ec = !acpi_dev_present("ELAN0634", NULL, -1);
+ /*
+ * Most ideapads with ELAN0634 and SYNA2B33 touchpads don't use
+ * EC touchpad switch
+ */
+ priv->features.touchpad_ctrl_via_ec = !acpi_dev_present("ELAN0634", NULL, -1) &&
+ !acpi_dev_present("SYNA2B33", NULL, -1);

if (!read_ec_data(handle, VPCCMD_R_FAN, &val))
priv->features.fan_mode = true;
--
2.34.1