Re: [PATCH] dt-bindings: iio: adc: Add TI TWL603X GPADC

From: Andreas Kemnade
Date: Sat Aug 19 2023 - 20:12:26 EST


Hi,

On Sat, 19 Aug 2023 20:35:27 +0200
Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote:

> On 16/08/2023 22:26, Andreas Kemnade wrote:
> > Document TI TWL603X GPADC devicetree bindings.
> > A driver is already there, the compatibles are used, but not documented.
> > Use two separate files to reference only the allowed compatible in
> > a future YAML version of
> > Documentation/devicetree/bindings/mfd/twl-family.txt
> >
> > Signed-off-by: Andreas Kemnade <andreas@xxxxxxxxxxxx>
> > ---
>
> Thank you for your patch. There is something to discuss/improve.
>
>
> > .../bindings/iio/adc/ti,twl6030-gpadc.yaml | 42 +++++++++++++++++++
> > .../bindings/iio/adc/ti,twl6032-gpadc.yaml | 42 +++++++++++++++++++
> > 2 files changed, 84 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,twl6030-gpadc.yaml
> > create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,twl6032-gpadc.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/iio/adc/ti,twl6030-gpadc.yaml b/Documentation/devicetree/bindings/iio/adc/ti,twl6030-gpadc.yaml
> > new file mode 100644
> > index 000000000000..08bc0468f616
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/iio/adc/ti,twl6030-gpadc.yaml
> > @@ -0,0 +1,42 @@
> > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/iio/adc/ti,twl6030-gpadc.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: GPADC subsystem in the TWL6030 power module
> > +
> > +maintainers:
> > + - Jonathan Cameron <jic23@xxxxxxxxxx>
>
> This should be rather someone knowing or having or caring about this
> particular hardware, not subsystem maintainer.
>
Hmm, I have the twl6032, but not the twl6030. So probably
Tony (OMAP-Maintainer) or me?

> > +
> > +description:
> > + The GPADC subsystem in the TWL6030 consists of a 10-bit ADC
> > + combined with a 15-input analog multiplexer.
> > +
> > +properties:
> > + compatible:
> > + const: ti,twl6030-gpadc
>
> Devices look fairly similar. Same properties. Why aren't they in one
> binding (enum here instead)?
>
I hope it can be done. See commit message. Maybe my reasoning is wrong.

So what I am thinking about:

&i2c {
twl: pmic@48 {
compatible = "ti,twl6032;
adc {
compatible = "ti,twl6032-gpadc";
}
}
}

So the idea was to later enforce that below a "ti,twl6032" no "ti,twl6030-gpadc"
is allowed in a future yaml version of mfd/twl-family.txt by
using a if: ... compatible = "twl,6032" .. $ref ti,twl6032-gpadc.yaml

If there are other possibilities or that can be just ignored for now,
I fully agree to your proposal.

Regards,
Andreas