Revert "HID: multitouch: Add support for lenovo Y9000P Touchpad"
authorJiri Kosina <jkosina@suse.com>
Thu, 12 Dec 2024 08:53:10 +0000 (09:53 +0100)
committerJiri Kosina <jkosina@suse.com>
Thu, 12 Dec 2024 08:53:10 +0000 (09:53 +0100)
This reverts commit 251efae73bd46b097deec4f9986d926813aed744.

Quoting Wang Yuli:

"The 27C6:01E0 touchpad doesn't require the workaround and applying it
would actually break functionality.

The initial report came from a BBS forum, but we suspect the
information provided by the forum user may be incorrect which could
happen sometimes. [1]

Further investigation showed that the Lenovo Y9000P 2024 doesn't even
use a Goodix touchpad. [2]

For the broader issue of 27c6:01e0 being unusable on some devices, it
just need to address it with a libinput quirk.

In conclusion, we should revert this commit, which is the best
solution."

Reported-by: Ulrich Müller <ulm@gentoo.org>
Reported-by: WangYuli <wangyuli@uniontech.com>
Link: https://lore.kernel.org/all/uikt4wwpw@gentoo.org/
Signed-off-by: Jiri Kosina <jkosina@suse.com>
drivers/hid/hid-ids.h
drivers/hid/hid-multitouch.c

index 6c8fdb25b2fc05d20929035b5941eecffa3cf798..c448de53bf91e8645cd1976c414e650d820cd0af 100644 (file)
 #define USB_DEVICE_ID_GENERAL_TOUCH_WIN8_PIT_E100 0xe100
 
 #define I2C_VENDOR_ID_GOODIX           0x27c6
-#define I2C_DEVICE_ID_GOODIX_01E0      0x01e0
 #define I2C_DEVICE_ID_GOODIX_01E8      0x01e8
 #define I2C_DEVICE_ID_GOODIX_01E9      0x01e9
 #define I2C_DEVICE_ID_GOODIX_01F0      0x01f0
index 785743036647ca85e8b1fa9c38a6f1950129f131..65023bfe30ed2892d97cedde1d78102be67768a5 100644 (file)
@@ -1460,8 +1460,7 @@ static const __u8 *mt_report_fixup(struct hid_device *hdev, __u8 *rdesc,
 {
        if (hdev->vendor == I2C_VENDOR_ID_GOODIX &&
            (hdev->product == I2C_DEVICE_ID_GOODIX_01E8 ||
-            hdev->product == I2C_DEVICE_ID_GOODIX_01E9 ||
-                hdev->product == I2C_DEVICE_ID_GOODIX_01E0)) {
+            hdev->product == I2C_DEVICE_ID_GOODIX_01E9)) {
                if (rdesc[607] == 0x15) {
                        rdesc[607] = 0x25;
                        dev_info(
@@ -2085,10 +2084,7 @@ static const struct hid_device_id mt_devices[] = {
                     I2C_DEVICE_ID_GOODIX_01E8) },
        { .driver_data = MT_CLS_WIN_8_FORCE_MULTI_INPUT_NSMU,
          HID_DEVICE(BUS_I2C, HID_GROUP_ANY, I2C_VENDOR_ID_GOODIX,
-                    I2C_DEVICE_ID_GOODIX_01E9) },
-       { .driver_data = MT_CLS_WIN_8_FORCE_MULTI_INPUT_NSMU,
-         HID_DEVICE(BUS_I2C, HID_GROUP_ANY, I2C_VENDOR_ID_GOODIX,
-                    I2C_DEVICE_ID_GOODIX_01E0) },
+                    I2C_DEVICE_ID_GOODIX_01E8) },
 
        /* GoodTouch panels */
        { .driver_data = MT_CLS_NSMU,