Re: [PATCHv3 1/5] Input: add common DT binding for touchscreens

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Tue, May 06, 2014 at 01:04:12AM +0200, Sebastian Reichel wrote:
> On Mon, May 05, 2014 at 12:51:39PM -0700, Dmitry Torokhov wrote:
> > On Mon, May 05, 2014 at 12:41:26PM -0700, Tony Lindgren wrote:
> > > * Sebastian Reichel <sre@xxxxxxxxxx> [140425 16:56]:
> > > > Add common DT binding documentation for touchscreen devices and
> > > > implement input_parse_touchscreen_of_params, which parses the common
> > > > properties and configures the input device accordingly.
> > > > 
> > > > The method currently does not interpret the axis inversion properties,
> > > > since there is no matching flag in the generic linux input device.
> > > > 
> > > > Signed-off-by: Sebastian Reichel <sre@xxxxxxxxxx>
> > > > ---
> > > >  .../bindings/input/touchscreen/touchscreen.txt     | 27 +++++++++++++++++
> > > >  drivers/input/input.c                              | 34 ++++++++++++++++++++++
> > > >  include/linux/input.h                              |  8 +++++
> > > >  3 files changed, 69 insertions(+)
> > > >  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
> > > > 
> > > > diff --git a/Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt b/Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
> > > > new file mode 100644
> > > > index 0000000..d8e0616
> > > > --- /dev/null
> > > > +++ b/Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
> > > > @@ -0,0 +1,27 @@
> > > > +General Touchscreen Properties:
> > > > +
> > > > +Optional properties for Touchscreens:
> > > > + - touchscreen-size-x		: horizontal resolution of touchscreen
> > > > +				  (in pixels)
> > > > + - touchscreen-size-y		: vertical resolution of touchscreen
> > > > +				  (in pixels)
> > > > + - touchscreen-max-pressure	: maximum reported pressure (arbitrary range
> > > > +				  dependent on the controller)
> > > > + - touchscreen-fuzz-x		: horizontal noise value of the absolute input
> > > > +				  device (in pixels)
> > > > + - touchscreen-fuzz-y		: vertical noise value of the absolute input
> > > > +				  device (in pixels)
> > > > + - touchscreen-fuzz-pressure	: pressure noise value of the absolute input
> > > > +				  device (arbitrary range dependent on the
> > > > +				  controller)
> > 
> > Fuzz seems like linux-specific property, not generic one.
> 
> I don't know about the term "fuzz", but the idea is pretty generic
> IMHO. It's similar to debouncing switches/buttons.

OK, fair enough.

> 
> > > > + - touchscreen-inverted-x	: X axis is inverted (boolean)
> > > > + - touchscreen-inverted-y	: Y axis is inverted (boolean)
> > > 
> > > We probably also need something to swap x and y depending on the
> > > display orientation in addition to the touchscreen-inverted-x and y.
> > > Just swapping x and y is not enough depending if we rotate by 270
> > > degrees instead of 90 degrees.
> > > 
> > > Naturally that part can be added later.
> > 
> > So far we've been relying on upper layers (such as tslib) to perform
> > such transformations rather than re-implementing it in every driver. Are
> > we saying that we need to implement this in input core?
> 
> I would appreciate to add this later to move on with this patchset.
> Having the N900's touchscreen working via DT in 3.16 would be nice
> now that the display is working :)
> 

Please remove the "inverted" bits and move touchscreen OF parsing into a
separate file/module, similarly to support for sparse and matrix keymaps
that we have - it does not really belong to input core.

Thanks.

-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux