[PATCH] INPUT:Add ABS_PRESSURE input event support for touchscreen driver

Subsystems: arm/samsung s3c, s5p and exynos arm architectures, input (keyboard, mouse, joystick, touchscreen) drivers, the rest

STALE5550d

5 messages, 4 authors, 2011-06-27 · open the first message on its own page

[PATCH] INPUT:Add ABS_PRESSURE input event support for touchscreen driver

From: Wu DaoGuang <hidden>
Date: 2011-06-24 02:16:25

The touchscreen driver s3c2410_ts.c doesn't work well when using
the tslib, an abstraction layer for touchscreen panel events.
Tslib needs ABS_X ABS_Y and ABS_PRESSURE events to report, but only
the former two the driver can provide.

So this patch fixes the problem.

Signed-off-by: Wu DaoGuang <redacted>
---
 drivers/input/touchscreen/s3c2410_ts.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/drivers/input/touchscreen/s3c2410_ts.c b/drivers/input/touchscreen/s3c2410_ts.c
index 8feb7f3..0cf4f12 100644
--- a/drivers/input/touchscreen/s3c2410_ts.c
+++ b/drivers/input/touchscreen/s3c2410_ts.c
@@ -126,6 +126,7 @@ static void touch_timer_fire(unsigned long data)
 			input_report_abs(ts.input, ABS_Y, ts.yp);
 
 			input_report_key(ts.input, BTN_TOUCH, 1);
+			input_report_abs(ts.input, ABS_PRESSURE, 1);
 			input_sync(ts.input);
 
 			ts.xp = 0;
@@ -140,6 +141,7 @@ static void touch_timer_fire(unsigned long data)
 		ts.count = 0;
 
 		input_report_key(ts.input, BTN_TOUCH, 0);
+		input_report_abs(ts.input, ABS_PRESSURE, 0);
 		input_sync(ts.input);
 
 		writel(WAIT4INT | INT_DOWN, ts.io + S3C2410_ADCTSC);
@@ -318,7 +320,7 @@ static int __devinit s3c2410ts_probe(struct platform_device *pdev)
 	ts.input->keybit[BIT_WORD(BTN_TOUCH)] = BIT_MASK(BTN_TOUCH);
 	input_set_abs_params(ts.input, ABS_X, 0, 0x3FF, 0, 0);
 	input_set_abs_params(ts.input, ABS_Y, 0, 0x3FF, 0, 0);
-
+	input_set_abs_params(ts.input, ABS_PRESSURE, 0, 1, 0, 0);
 	ts.input->name = "S3C24XX TouchScreen";
 	ts.input->id.bustype = BUS_HOST;
 	ts.input->id.vendor = 0xDEAD;
-- 
1.7.1

Re: [PATCH] INPUT:Add ABS_PRESSURE input event support for touchscreen driver

From: Joonyoung Shim <hidden>
Date: 2011-06-24 02:26:35

On 2011-06-24 ?? 11:15, Wu DaoGuang wrote:
quoted hunk
The touchscreen driver s3c2410_ts.c doesn't work well when using
the tslib, an abstraction layer for touchscreen panel events.
Tslib needs ABS_X ABS_Y and ABS_PRESSURE events to report, but only
the former two the driver can provide.

So this patch fixes the problem.

Signed-off-by: Wu DaoGuang<redacted>
---
  drivers/input/touchscreen/s3c2410_ts.c |    4 +++-
  1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/drivers/input/touchscreen/s3c2410_ts.c b/drivers/input/touchscreen/s3c2410_ts.c
index 8feb7f3..0cf4f12 100644
--- a/drivers/input/touchscreen/s3c2410_ts.c
+++ b/drivers/input/touchscreen/s3c2410_ts.c
@@ -126,6 +126,7 @@ static void touch_timer_fire(unsigned long data)
  			input_report_abs(ts.input, ABS_Y, ts.yp);

  			input_report_key(ts.input, BTN_TOUCH, 1);
+			input_report_abs(ts.input, ABS_PRESSURE, 1);
  			input_sync(ts.input);

  			ts.xp = 0;
@@ -140,6 +141,7 @@ static void touch_timer_fire(unsigned long data)
  		ts.count = 0;

  		input_report_key(ts.input, BTN_TOUCH, 0);
+		input_report_abs(ts.input, ABS_PRESSURE, 0);
  		input_sync(ts.input);

  		writel(WAIT4INT | INT_DOWN, ts.io + S3C2410_ADCTSC);
@@ -318,7 +320,7 @@ static int __devinit s3c2410ts_probe(struct platform_device *pdev)
  	ts.input->keybit[BIT_WORD(BTN_TOUCH)] = BIT_MASK(BTN_TOUCH);
  	input_set_abs_params(ts.input, ABS_X, 0, 0x3FF, 0, 0);
  	input_set_abs_params(ts.input, ABS_Y, 0, 0x3FF, 0, 0);
-
+	input_set_abs_params(ts.input, ABS_PRESSURE, 0, 1, 0, 0);
  	ts.input->name = "S3C24XX TouchScreen";
  	ts.input->id.bustype = BUS_HOST;
  	ts.input->id.vendor = 0xDEAD;
This is already NAKed patch.

Please refer https://lkml.org/lkml/2010/11/9/270

Thanks.

Re: [PATCH] INPUT:Add ABS_PRESSURE input event support for touchscreen driver

From: Mark Brown <hidden>
Date: 2011-06-24 12:42:06

On Fri, Jun 24, 2011 at 10:15:38AM +0800, Wu DaoGuang wrote:
The touchscreen driver s3c2410_ts.c doesn't work well when using
the tslib, an abstraction layer for touchscreen panel events.
Tslib needs ABS_X ABS_Y and ABS_PRESSURE events to report, but only
the former two the driver can provide.
It seems much more sane to fix this in tslib, the kernel is not actually
reporting pressure meaningfully here and there's already BTN_TOUCH to
report if the pen is down.

Re: [PATCH] INPUT:Add ABS_PRESSURE input event support for touchscreen driver

From: daoguang wu <hidden>
Date: 2011-06-27 02:16:05

2011/6/24 Mark Brown [off-list ref]:
On Fri, Jun 24, 2011 at 10:15:38AM +0800, Wu DaoGuang wrote:
quoted
The touchscreen driver s3c2410_ts.c doesn't work well when using
the tslib, an abstraction layer for touchscreen panel events.
Tslib needs ABS_X ABS_Y and ABS_PRESSURE events to report, but only
the former two the driver can provide.
It seems much more sane to fix this in tslib, the kernel is not actually
reporting pressure meaningfully here and there's already BTN_TOUCH to
report if the pen is down.
yeah,I will try to fix it in tslib.
Thanks a lot.

RE: [PATCH] INPUT:Add ABS_PRESSURE input event support for touchscreen driver

From: Baohua Song <hidden>
Date: 2011-06-27 03:08:00

-----Original Message-----
From: linux-arm-kernel-bounces at lists.infradead.org
[mailto:linux-arm-kernel-bounces at lists.infradead.org] On Behalf Of daoguang
wu
Sent: 2011?6?27? 10:15
To: Mark Brown
Cc: kgene.kim at samsung.com; ben-linux at fluff.org;
dmitry.torokhov at gmail.com; linux-kernel at vger.kernel.org;
wdgvip at gamil.com; linux-input at vger.kernel.org;
linux-arm-kernel at lists.infradead.org
Subject: Re: [PATCH] INPUT:Add ABS_PRESSURE input event support for
touchscreen driver

2011/6/24 Mark Brown [off-list ref]:
quoted
On Fri, Jun 24, 2011 at 10:15:38AM +0800, Wu DaoGuang wrote:
quoted
The touchscreen driver s3c2410_ts.c doesn't work well when using
the tslib, an abstraction layer for touchscreen panel events.
Tslib needs ABS_X ABS_Y and ABS_PRESSURE events to report, but only
the former two the driver can provide.
It seems much more sane to fix this in tslib, the kernel is not actually
reporting pressure meaningfully here and there's already BTN_TOUCH to
report if the pen is down.
yeah,I will try to fix it in tslib.
You may send a patch to tslib. 
Thanks a lot.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel


 To report this email as spam click
https://www.mailcontrol.com/sr/wQw0zmjPoHdJTZGyOCrrhg==
t4zoc+!n!INSV2C4qhUHSr1YUlPAL0C6yBmfTIRMbBnxawg== .

Member of the CSR plc group of companies. CSR plc registered in England and Wales, registered number 4187346, registered office Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, United Kingdom
More information can be found at www.csr.com. Follow CSR on Twitter at http://twitter.com/CSR_PLC and read our blog at www.csr.com/blog
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help