lkml.org 
[lkml]   [2014]   [Mar]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [PATCHv4 2/5] Input: edt-ft5x06: Add DT support
    On Thu, Mar 20, 2014 at 11:40:55AM +0000, Lothar Waßmann wrote:
    > 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"

    Drop the "edt,edt-ft5x06" string. If they really appear to be identical
    from a programmer's perspective, choose a particular variant to be used
    as the fallback.

    There could be a future variant that would appear to match the x string
    yet was completely incompatible with the expected programming interface.

    > > > + - 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

    That sounds fine to me.

    > > > + - 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.

    Sounds good to me.

    >
    > > > +#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.

    Cheers,
    Mark.
    --
    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 14:41    [W:4.543 / U:0.260 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site