lkml.org 
[lkml]   [2014]   [Mar]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCHv4 2/5] Input: edt-ft5x06: Add DT support
Hi,

Mark Rutland wrote:
> On Wed, Mar 19, 2014 at 01:09:20PM +0000, Lothar Waßmann wrote:
> >
> > Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
> > ---
> > .../bindings/input/touchscreen/edt-ft5x06.txt | 41 ++++++
> > drivers/input/touchscreen/edt-ft5x06.c | 144 +++++++++++++++-----
> > 2 files changed, 154 insertions(+), 31 deletions(-)
> > create mode 100644 Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt
> >
> > diff --git a/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt b/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt
> > new file mode 100644
> > index 0000000..e5adc76
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt
> > @@ -0,0 +1,41 @@
> > +FocalTech EDT-FT5x06 Polytouch driver
> > +=====================================
> > +
> > +Required properties:
> > + - compatible: "edt,edt-ft5x06"
>
> Is the 'x' part of a particular product name, or is this a class of
> devices?
>
The FT5x06 datasheet lists 3 variants for different panel sizes.
I'll add distinct compatible strings for those chips, though their SW
interface is (currently) identical:
|Required properties:
| - compatible: "edt,edt-ft5206", "edt,edt-ft5x06"
| or: "edt,edt-ft5306", "edt,edt-ft5x06"
| or: "edt,edt-ft5406", "edt,edt-ft5x06"


> > + - reg: I2C slave address of the chip (0x38)
> > + - interrupt-parent: a phandle pointing to the interrupt controller
> > + serving the interrupt for this chip
> > + - interrupts: interrupt specification for this chip
>
> How many? What are they for?
>
I'll change it to:
| - interrupts: interrupt specification for the touchdetect
| interrupt

> > + - report_rate: allows setting the report rate in the range from 3 to
> > + 14.
>
> However, why can the kernel not decide the report rate? This doesn't
> sound like something that needs to vary per-board.
>
> Also, s/_/-/ in property names, please.
>
OK, I'll drop the property, which also simplyfies the code a bit.

> > +#define EDT_GET_PROP(name, reg) { \
> > + const u32 *prop = of_get_property(np, #name, NULL); \
> > + if (prop) \
> > + edt_ft5x06_register_write(tsdata, reg, be32_to_cpu(*prop)); \
> > +}
>
> Use of_property_read_u32, it'll handle endianness conversion for you.
>
> Use of of_get_property is almost always wrong.
>
Sure.


Lothar Waßmann
--
___________________________________________________________

Ka-Ro electronics GmbH | Pascalstraße 22 | D - 52076 Aachen
Phone: +49 2408 1402-0 | Fax: +49 2408 1402-10
Geschäftsführer: Matthias Kaussen
Handelsregistereintrag: Amtsgericht Aachen, HRB 4996

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

\
 
 \ /
  Last update: 2014-03-20 13:21    [W:0.124 / U:2.172 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site