Re: [RFC PATCH 0/1] input/touchscreen: Synaptics Touchscreen Driver

From: Christopher Heiny
Date: Tue Mar 23 2010 - 15:18:27 EST


On 03/22/2010 08:04 PM, Arve Hjønnevåg wrote:
On Mon, Mar 22, 2010 at 7:07 PM, Christopher Heiny<cheiny@xxxxxxxxxxxxx> wrote:
...
There are two existing drivers for similar Synaptics devices in the
current kernel tree (excluding the PS/2 touchpad driver). These are:

./linux-2.6/drivers/input/mouse/synaptics_i2c.c
A driver for the Exeda 15mm touchpad, written by Mike Rapoport
<mike@xxxxxxxxxxxxxx> and Igor Grinberg<grinberg@xxxxxxxxxxxxxx>

./linux-2.6/drivers/staging/dream/synaptics_i2c_rmi.c
A driver for the HTC Dream ClearPad, written by Arve Hjønnevåg
<arve@xxxxxxxxxxx>

We have not extended these drivers for a couple of reasons. First, the
two drivers are specific to particular Synaptics products, and it is our
desire to produce a general solution that takes advantage of the 'self
describing' features of products that use the RMI protocol.


Do you plan to add platform data to align the reported touchscreen
data with the screen behind it, or do the new hardware allow the the
firmware handle this? In the past we even needed separate parameters
for different firmware versions (seen in
drivers/staging/dream/synaptics_i2c_rmi.h).

Hi Arve,

RMI4 touchscreens allow adjustment of the reported coordinate range (see the F11_2D_Ctrl6..9 registers, page 48 of the current version of the spec at http://www.synaptics.com/developers/manuals). Using this feature, the device can be configured to report the same number of positions on each axis as there are pixels on the display.

We plan to make these settings accessible via sysfs, so that it can be dynamically tweaked if the user changes the display resolution (not likely on a phone, probable on a tablet/slate/ereader type device). Assuming there are no significant issues with our current patch, we plan to include that in the next one. We're holding off that implementation because we're still finding our feet on the submission process, and wanted to keep the initial submits small so changes would be more manageable.

Coordinate rotation/reflection settings will be handled at the driver level, again via sysfs.

These features should be independent of the touchscreen firmware level. Initial settings for these features should probably be done at the platform level.

Chris
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/