diff mbox series

[RESEND] Input: tsc200x-core - Add axis inversion and swapping support

Message ID 20220209223933.1672782-1-y.bas@phytec.de (mailing list archive)
State Superseded
Commit e511fc58071ab9b72d25667e5957cf895eb53cdf
Headers show
Series [RESEND] Input: tsc200x-core - Add axis inversion and swapping support | expand

Commit Message

Yunus Bas Feb. 9, 2022, 10:39 p.m. UTC
Since Commit ed7c9870c9bc ("Input: of_touchscreen - add support for
inverted / swapped axes"), the of_touchscreen interface supports axis
inverting and swapping through Devicetree properties. Make use of this
feature.

Signed-off-by: Yunus Bas <y.bas@phytec.de>
---
 drivers/input/touchscreen/tsc200x-core.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

Comments

Dmitry Torokhov Feb. 10, 2022, 1:03 a.m. UTC | #1
On Wed, Feb 09, 2022 at 11:39:33PM +0100, Yunus Bas wrote:
> Since Commit ed7c9870c9bc ("Input: of_touchscreen - add support for
> inverted / swapped axes"), the of_touchscreen interface supports axis
> inverting and swapping through Devicetree properties. Make use of this
> feature.
> 
> Signed-off-by: Yunus Bas <y.bas@phytec.de>

Applied, thank you, however I believe we also need to adjust
Documentation/devicetree/bindings/input/touchscreen/ti,tsc2005.yamli to
allow these properties.

Thanks.
Yunus Bas Feb. 10, 2022, 8:56 a.m. UTC | #2
Hi Dmitry,

Am Mittwoch, dem 09.02.2022 um 17:03 -0800 schrieb Dmitry Torokhov:
> On Wed, Feb 09, 2022 at 11:39:33PM +0100, Yunus Bas wrote:
> > Since Commit ed7c9870c9bc ("Input: of_touchscreen - add support for
> > inverted / swapped axes"), the of_touchscreen interface supports
> > axis
> > inverting and swapping through Devicetree properties. Make use of
> > this
> > feature.
> > 
> > Signed-off-by: Yunus Bas <y.bas@phytec.de>
> 
> Applied, thank you, however I believe we also need to adjust
> Documentation/devicetree/bindings/input/touchscreen/ti,tsc2005.yamli
> to
> allow these properties.

Thank you for the note. I will update the documentation ASAP and send a
v2.

Regards
Yunus

> 
> Thanks.
>
diff mbox series

Patch

diff --git a/drivers/input/touchscreen/tsc200x-core.c b/drivers/input/touchscreen/tsc200x-core.c
index 27810f6c69f6..72c7258b93a5 100644
--- a/drivers/input/touchscreen/tsc200x-core.c
+++ b/drivers/input/touchscreen/tsc200x-core.c
@@ -88,6 +88,8 @@  struct tsc200x {
 	int                     in_z1;
 	int			in_z2;
 
+	struct touchscreen_properties prop;
+
 	spinlock_t		lock;
 	struct timer_list	penup_timer;
 
@@ -113,8 +115,7 @@  static void tsc200x_update_pen_state(struct tsc200x *ts,
 				     int x, int y, int pressure)
 {
 	if (pressure) {
-		input_report_abs(ts->idev, ABS_X, x);
-		input_report_abs(ts->idev, ABS_Y, y);
+		touchscreen_report_pos(ts->idev, &ts->prop, x, y, false);
 		input_report_abs(ts->idev, ABS_PRESSURE, pressure);
 		if (!ts->pen_down) {
 			input_report_key(ts->idev, BTN_TOUCH, !!pressure);
@@ -533,7 +534,7 @@  int tsc200x_probe(struct device *dev, int irq, const struct input_id *tsc_id,
 	input_set_abs_params(input_dev, ABS_PRESSURE,
 			     0, MAX_12BIT, TSC200X_DEF_P_FUZZ, 0);
 
-	touchscreen_parse_properties(input_dev, false, NULL);
+	touchscreen_parse_properties(input_dev, false, &ts->prop);
 
 	/* Ensure the touchscreen is off */
 	tsc200x_stop_scan(ts);