* [PATCH 1/2] Input: tsc2007 - accept standard properties
2024-10-14 14:12 [PATCH 0/2] ARM: ti/omap: gta04: properly specify GTA04 touchscreen properties Andreas Kemnade
@ 2024-10-14 14:12 ` Andreas Kemnade
2024-11-11 19:25 ` Andreas Kemnade
2024-10-14 14:12 ` [PATCH 2/2] ARM: dts: ti/omap: omap3-gta04: use proper touchscreen properties Andreas Kemnade
1 sibling, 1 reply; 4+ messages in thread
From: Andreas Kemnade @ 2024-10-14 14:12 UTC (permalink / raw)
To: khilman, devicetree, Tony Lindgren, linux-kernel,
Krzysztof Kozlowski, Rob Herring, Andreas Kemnade, Conor Dooley,
Uwe Kleine-König, linux-input, Dmitry Torokhov, linux-omap
Only some driver-specific properties were accepted, change it
to use the now-available standard properties which are
found in devicetrees containing this chip.
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
drivers/input/touchscreen/tsc2007.h | 2 ++
drivers/input/touchscreen/tsc2007_core.c | 5 ++---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/input/touchscreen/tsc2007.h b/drivers/input/touchscreen/tsc2007.h
index 69b08dd6c8df1..e346fb4f75521 100644
--- a/drivers/input/touchscreen/tsc2007.h
+++ b/drivers/input/touchscreen/tsc2007.h
@@ -19,6 +19,7 @@
#ifndef _TSC2007_H
#define _TSC2007_H
+#include <linux/input/touchscreen.h>
struct gpio_desc;
#define TSC2007_MEASURE_TEMP0 (0x0 << 4)
@@ -63,6 +64,7 @@ struct tsc2007 {
struct i2c_client *client;
+ struct touchscreen_properties prop;
u16 model;
u16 x_plate_ohms;
u16 max_rt;
diff --git a/drivers/input/touchscreen/tsc2007_core.c b/drivers/input/touchscreen/tsc2007_core.c
index 8d832a372b897..5252301686ec6 100644
--- a/drivers/input/touchscreen/tsc2007_core.c
+++ b/drivers/input/touchscreen/tsc2007_core.c
@@ -142,8 +142,7 @@ static irqreturn_t tsc2007_soft_irq(int irq, void *handle)
rt = ts->max_rt - rt;
input_report_key(input, BTN_TOUCH, 1);
- input_report_abs(input, ABS_X, tc.x);
- input_report_abs(input, ABS_Y, tc.y);
+ touchscreen_report_pos(input, &ts->prop, tc.x, tc.y, false);
input_report_abs(input, ABS_PRESSURE, rt);
input_sync(input);
@@ -339,9 +338,9 @@ static int tsc2007_probe(struct i2c_client *client)
input_set_drvdata(input_dev, ts);
input_set_capability(input_dev, EV_KEY, BTN_TOUCH);
-
input_set_abs_params(input_dev, ABS_X, 0, MAX_12BIT, ts->fuzzx, 0);
input_set_abs_params(input_dev, ABS_Y, 0, MAX_12BIT, ts->fuzzy, 0);
+ touchscreen_parse_properties(input_dev, false, &ts->prop);
input_set_abs_params(input_dev, ABS_PRESSURE, 0, MAX_12BIT,
ts->fuzzz, 0);
--
2.39.2
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH 2/2] ARM: dts: ti/omap: omap3-gta04: use proper touchscreen properties
2024-10-14 14:12 [PATCH 0/2] ARM: ti/omap: gta04: properly specify GTA04 touchscreen properties Andreas Kemnade
2024-10-14 14:12 ` [PATCH 1/2] Input: tsc2007 - accept standard properties Andreas Kemnade
@ 2024-10-14 14:12 ` Andreas Kemnade
1 sibling, 0 replies; 4+ messages in thread
From: Andreas Kemnade @ 2024-10-14 14:12 UTC (permalink / raw)
To: khilman, devicetree, Tony Lindgren, linux-kernel,
Krzysztof Kozlowski, Rob Herring, Andreas Kemnade, Conor Dooley,
Uwe Kleine-König, linux-input, Dmitry Torokhov, linux-omap
Specify the dimensions of the touchscreen propertly so that
no userspace configuration is needed for it.
Tested with x11 and weston on Debian bookworm.
What is in now is some debris from earlier tries to handle
scaling in kernel:
https://lore.kernel.org/linux-input/cover.1482936802.git.hns@goldelico.com/
Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
---
arch/arm/boot/dts/ti/omap/omap3-gta04.dtsi | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/ti/omap/omap3-gta04.dtsi b/arch/arm/boot/dts/ti/omap/omap3-gta04.dtsi
index 3661340009e7a..6e25db29a4bb9 100644
--- a/arch/arm/boot/dts/ti/omap/omap3-gta04.dtsi
+++ b/arch/arm/boot/dts/ti/omap/omap3-gta04.dtsi
@@ -591,8 +591,10 @@ tsc2007@48 {
interrupts = <0 IRQ_TYPE_EDGE_FALLING>; /* GPIO_160 */
gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* GPIO_160 */
ti,x-plate-ohms = <600>;
- touchscreen-size-x = <480>;
- touchscreen-size-y = <640>;
+ touchscreen-size-x = <0xf00>;
+ touchscreen-size-y = <0xf00>;
+ touchscreen-min-x = <0x100>;
+ touchscreen-min-y = <0x100>;
touchscreen-max-pressure = <1000>;
touchscreen-fuzz-x = <3>;
touchscreen-fuzz-y = <8>;
--
2.39.2
^ permalink raw reply related [flat|nested] 4+ messages in thread