[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241031073419.9189-3-alex.vinarskis@gmail.com>
Date: Thu, 31 Oct 2024 08:31:42 +0100
From: Aleksandrs Vinarskis <alex.vinarskis@...il.com>
To: Jiri Kosina <jikos@...nel.org>,
Hans de Goede <hdegoede@...hat.com>,
linux-input@...r.kernel.org,
linux-kernel@...r.kernel.org
Cc: Benjamin Tissoires <bentiss@...nel.org>,
Bryan.Kemp@...l.com,
laurentiu.tudor1@...l.com,
Aleksandrs Vinarskis <alex.vinarskis@...il.com>
Subject: [PATCH v2 2/2] HID: i2c-hid: introduce qtec vendor, enable re-power-on quirk
This solves keyboard not working until suspend&resume issue on Dell XPS
9345 13" (codenamed 'tributo').
Signed-off-by: Aleksandrs Vinarskis <alex.vinarskis@...il.com>
---
drivers/hid/hid-ids.h | 2 ++
drivers/hid/i2c-hid/i2c-hid-core.c | 5 +++++
2 files changed, 7 insertions(+)
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 30728997f4c0..cc9b9bdca117 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -1088,6 +1088,8 @@
#define USB_VENDOR_ID_PRODIGE 0x05af
#define USB_DEVICE_ID_PRODIGE_CORDLESS 0x3062
+#define I2C_VENDOR_ID_QTEC 0x6243
+
#define USB_VENDOR_ID_QUANTA 0x0408
#define USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH 0x3000
#define USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3001 0x3001
diff --git a/drivers/hid/i2c-hid/i2c-hid-core.c b/drivers/hid/i2c-hid/i2c-hid-core.c
index ad386ae878ef..29c75e390a7d 100644
--- a/drivers/hid/i2c-hid/i2c-hid-core.c
+++ b/drivers/hid/i2c-hid/i2c-hid-core.c
@@ -136,6 +136,11 @@ static const struct i2c_hid_quirks {
I2C_HID_QUIRK_BAD_INPUT_SIZE },
{ I2C_VENDOR_ID_CIRQUE, I2C_PRODUCT_ID_CIRQUE_1063,
I2C_HID_QUIRK_NO_SLEEP_ON_SUSPEND },
+ /*
+ * Without additional power on command, at least some QTEC devices send garbage
+ */
+ { I2C_VENDOR_ID_QTEC, HID_ANY_ID,
+ I2C_HID_QUIRK_RE_POWER_ON },
/*
* Sending the wakeup after reset actually break ELAN touchscreen controller
*/
--
2.45.2
Powered by blists - more mailing lists