From patchwork Tue Aug 27 02:56:05 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: He Lugang X-Patchwork-Id: 13778751 X-Patchwork-Delegate: jikos@jikos.cz Received: from smtpbgsg2.qq.com (smtpbgsg2.qq.com [54.254.200.128]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C01B8168BE for ; Tue, 27 Aug 2024 02:56:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=54.254.200.128 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1724727403; cv=none; b=UZS9z9q/+DfWL/Mo1oXdPnpzIXMwnbVs1e9e8yUtL24I5swVUTWDzgjoRPbNbZ7ti3VQ28+pRKWFgP6VA+lT+vFG6ekn+av8PLffXrDnrhkjPWGJSMYNWQn3QIzl6wuukWijhYR3avCEDYSx9OgyEh+K89RAX8/pYy4YTmWVTvo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1724727403; c=relaxed/simple; bh=YReN9hhTm/AgGwN0pk/NvTUlS6J27z+Z3E74YmfRp6c=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=FdMTLdQCM6E+XViI/iID+4r5MgJ2qBIR63JzjPXQPImKgIlXezrqU49cRWkjWoyvEMVvkDiwXNAYRi0gYgx3DnU5Ql23HGh6KICrztmMwayg0+uIik77oNcp7vIWia+Rv6ysjhLKF9LcehE0UlLPxCx+tIpLiitzspl0L/jK4+o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=uniontech.com; spf=pass smtp.mailfrom=uniontech.com; dkim=pass (1024-bit key) header.d=uniontech.com header.i=@uniontech.com header.b=aVnGZC0U; arc=none smtp.client-ip=54.254.200.128 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=uniontech.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=uniontech.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=uniontech.com header.i=@uniontech.com header.b="aVnGZC0U" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uniontech.com; s=onoh2408; t=1724727376; bh=Xq9ybufUgwg5w8zkVefTMid7KAewFwiTPVvxMnZlVWo=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=aVnGZC0UJw2F4c4WnQ32zGvelWCyxbG260b6rnO/PVw5B+an0b73F9rdvIB9aMeaC 4NLE30jcstNIMtSExouoZSPtRyQthjHzZ/isg1Lv3A/xOkZQNrLpGIjhIXPKXH5U8/ Jhk2qH5VmPTuxhdc1dm9w9TzjekaRZmQDXYot1+Y= X-QQ-mid: bizesmtpsz11t1724727373tu07y5 X-QQ-Originating-IP: f7RDH/RfcUYogMg0apaufoZrh11eEzi6nstxWlEgFNw= Received: from localhost.localdomain ( [221.226.144.218]) by bizesmtp.qq.com (ESMTP) with id ; Tue, 27 Aug 2024 10:56:08 +0800 (CST) X-QQ-SSF: 0000000000000000000000000000000 X-QQ-GoodBg: 1 X-BIZMAIL-ID: 11103224841497809063 From: He Lugang To: jikos@kernel.org, bentiss@kernel.org Cc: linux-input@vger.kernel.org, He Lugang Subject: [PATCH] HID: multitouch: Add support for lenovo Y9000P Touchpad Date: Tue, 27 Aug 2024 10:56:05 +0800 Message-ID: X-Mailer: git-send-email 2.45.2 Precedence: bulk X-Mailing-List: linux-input@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtpsz:uniontech.com:qybglogicsvrgz:qybglogicsvrgz7a-0 The 2024 Lenovo Y9000P which use GT7868Q chip also needs a fixup. The information of the chip is as follows: I2C HID v1.00 Mouse [GXTP5100:00 27C6:01E0] Signed-off-by: He Lugang --- drivers/hid/hid-ids.h | 1 + drivers/hid/hid-multitouch.c | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 53655f81d995..83a03edb37e9 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -505,6 +505,7 @@ #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 diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c index 99812c0f830b..0faaa2c23d2e 100644 --- a/drivers/hid/hid-multitouch.c +++ b/drivers/hid/hid-multitouch.c @@ -1446,7 +1446,8 @@ static __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_01E9 || + hdev->product == I2C_DEVICE_ID_GOODIX_01E0)) { if (rdesc[607] == 0x15) { rdesc[607] = 0x25; dev_info( @@ -2065,7 +2066,10 @@ 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_01E8) }, + 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) }, /* GoodTouch panels */ { .driver_data = MT_CLS_NSMU,