forked from Openwrt/openwrt
8c405cdccc
The patches were generated from the RPi repo with the following command: git format-patch v6.6.34..rpi-6.1.y Some patches needed rebasing and, as usual, the applied and reverted, wireless drivers, Github workflows, READMEs and defconfigs patches were removed. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
54 lines
1.8 KiB
Diff
54 lines
1.8 KiB
Diff
From a97af221c8c31e5ec21f46064bfd3f176248a14a Mon Sep 17 00:00:00 2001
|
|
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|
Date: Wed, 8 Nov 2023 16:20:27 +0000
|
|
Subject: [PATCH 0742/1085] input: goodix: Include I2C details in names for the
|
|
devices
|
|
|
|
libinput uses the input device name alone. If you have two
|
|
identical input devices, then there is no way to differentiate
|
|
between them, and in the case of touchscreens that means no
|
|
way to associate them with the appropriate display device.
|
|
|
|
Add the I2C bus and address to the start of the input device
|
|
name so that the name is always unique within the system.
|
|
|
|
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|
---
|
|
drivers/input/touchscreen/goodix.c | 5 ++++-
|
|
drivers/input/touchscreen/goodix.h | 3 +++
|
|
2 files changed, 7 insertions(+), 1 deletion(-)
|
|
|
|
--- a/drivers/input/touchscreen/goodix.c
|
|
+++ b/drivers/input/touchscreen/goodix.c
|
|
@@ -1194,7 +1194,10 @@ static int goodix_configure_dev(struct g
|
|
return -ENOMEM;
|
|
}
|
|
|
|
- ts->input_dev->name = "Goodix Capacitive TouchScreen";
|
|
+ snprintf(ts->name, GOODIX_NAME_MAX_LEN, "%s Goodix Capacitive TouchScreen",
|
|
+ dev_name(&ts->client->dev));
|
|
+
|
|
+ ts->input_dev->name = ts->name;
|
|
ts->input_dev->phys = "input/ts";
|
|
ts->input_dev->id.bustype = BUS_I2C;
|
|
ts->input_dev->id.vendor = 0x0416;
|
|
--- a/drivers/input/touchscreen/goodix.h
|
|
+++ b/drivers/input/touchscreen/goodix.h
|
|
@@ -57,6 +57,8 @@
|
|
#define GOODIX_CONFIG_MAX_LENGTH 240
|
|
#define GOODIX_MAX_KEYS 7
|
|
|
|
+#define GOODIX_NAME_MAX_LEN 38
|
|
+
|
|
enum goodix_irq_pin_access_method {
|
|
IRQ_PIN_ACCESS_NONE,
|
|
IRQ_PIN_ACCESS_GPIO,
|
|
@@ -91,6 +93,7 @@ struct goodix_ts_data {
|
|
enum gpiod_flags gpiod_rst_flags;
|
|
char id[GOODIX_ID_MAX_LEN + 1];
|
|
char cfg_name[64];
|
|
+ char name[GOODIX_NAME_MAX_LEN];
|
|
u16 version;
|
|
bool reset_controller_at_probe;
|
|
bool load_cfg_from_disk;
|