Thread (66 messages) 66 messages, 12 authors, 2009-08-22

Re: Support for synaptic touchscreen in HTC dream

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2009-07-15 15:27:10
Also in: lkml

Hi Pavel,

On Wed, Jul 15, 2009 at 03:48:55PM +0200, Pavel Machek wrote:
On Tue 2009-07-14 10:52:12, Dmitry Torokhov wrote:
quoted
On Tue, Jul 14, 2009 at 12:06:34PM +0200, Pavel Machek wrote:
quoted
+	input_report_abs(ts->input_dev, ABS_PRESSURE, z);
+	input_report_abs(ts->input_dev, ABS_TOOL_WIDTH, w);
+	input_report_key(ts->input_dev, BTN_TOUCH, finger);
+	finger2_pressed = finger > 1 && finger != 7;
+	input_report_key(ts->input_dev, BTN_2, finger2_pressed);
+	if (finger2_pressed) {
+		input_report_abs(ts->input_dev, ABS_HAT0X, pos[1][0]);
+		input_report_abs(ts->input_dev, ABS_HAT0Y, pos[1][1]);
ABS_HAT is pretty unusual for a touchscreen...
It is trying to do something useful for multitouch. People actually
use multitouch on HTC dream. I guess I can strip it from version being
merged...
What about converting it to emit ABS_MT_* events added specifically
for the multitouch protocol?
quoted
quoted
+	ts->input_dev->name = "synaptics-rmi-touchscreen";
BUS_I2C, etc.
I figured out BUS_I2C. Anything else I need to set?
No, just set what you know. It is purely to help userspace identify the
device.
quoted
quoted
+	if (client->irq) {
+		ret = request_irq(client->irq, synaptics_ts_irq_handler,
+				  0, client->name, ts);
I think threaded IRQ will fit the bill and will take care of
IRQ/workqueue shutdown races. Of course you still need to use workqueue
if polling.
I guess we'll just strip polling version for now?
Well, is it useable in polling mode? Do we forsee any devices using it
that way? If no then shure, strip it out.

-- 
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help