Re: [PATCH v4 3/3] dt-bindings: touchscreen: Add binding for Novatek NT36xxx series driver

From: Rob Herring
Date: Tue Oct 13 2020 - 10:42:20 EST


On Thu, Oct 08, 2020 at 10:30:35PM +0200, AngeloGioacchino Del Regno wrote:
> Il giorno gio 8 ott 2020 alle ore 20:21 Krzysztof Kozlowski
> <krzk@xxxxxxxxxx> ha scritto:
> >
> > On Thu, 8 Oct 2020 at 20:15, <kholk11@xxxxxxxxx> wrote:
> > >
> > > From: AngeloGioacchino Del Regno <kholk11@xxxxxxxxx>
> > >
> > > Add binding for the Novatek NT36xxx series touchscreen driver.
> > >
> > > Signed-off-by: AngeloGioacchino Del Regno <kholk11@xxxxxxxxx>
> > > ---
> > > .../input/touchscreen/novatek,nt36xxx.yaml | 59 +++++++++++++++++++
> > > 1 file changed, 59 insertions(+)
> > > create mode 100644 Documentation/devicetree/bindings/input/touchscreen/novatek,nt36xxx.yaml
> > >
> > > diff --git a/Documentation/devicetree/bindings/input/touchscreen/novatek,nt36xxx.yaml b/Documentation/devicetree/bindings/input/touchscreen/novatek,nt36xxx.yaml
> > > new file mode 100644
> > > index 000000000000..e747cacae036
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/input/touchscreen/novatek,nt36xxx.yaml
> > > @@ -0,0 +1,59 @@
> > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/input/touchscreen/novatek,nt36xxx.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Novatek NT36xxx series touchscreen controller Bindings
> > > +
> > > +maintainers:
> > > + - Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
> > > +
> > > +allOf:
> > > + - $ref: touchscreen.yaml#
> > > +
> > > +properties:
> > > + compatible:
> > > + const: novatek,nt36xxx
> >
> > Thanks for the changes, they look good except this part here which I
> > missed before. The compatible should not contain wildcards. If all
> > devices are really compatible, just add here one const, e.g. "const:
> > novatek,nt36525". If they are different, you could add multiple
> > compatibles in enum.
> >
> > Best regards,
> > Krzysztof
>
> They are all managed the same way, but the page addresses are
> changing between all of them... the driver is reading the chip ID
> while the TS MCU is in "boot mode", then checking in a ID table
> if the chip is supported and finally assigning a page address table.
> This is done for the entire NT36*** series.

The important part is whether everything needed to read the chip ID
is identical? Same power supplies and sequencing, clocks, resets,
enables, etc.? If any of those vary then you'll need something more
specific. You can always have a common fallback.

Rob