Re: [PATCH v4 4/5] dt-bindings: iio: amplifiers: Add docs for HMC425A Step Attenuator

From: Ardelean, Alexandru
Date: Mon Feb 03 2020 - 06:26:14 EST


On Sun, 2020-02-02 at 10:53 +0000, Jonathan Cameron wrote:
> On Wed, 29 Jan 2020 16:23:00 +0200
> Beniamin Bia <beniamin.bia@xxxxxxxxxx> wrote:
>
> > From: Michael Hennerich <michael.hennerich@xxxxxxxxxx>
> >
> > Document support for Analog Devices MC425A Step Attenuator.
> >
> > Signed-off-by: Michael Hennerich <michael.hennerich@xxxxxxxxxx>
> > Signed-off-by: Beniamin Bia <beniamin.bia@xxxxxxxxxx>
> > ---
> > .../bindings/iio/amplifiers/adi,hmc425a.yaml | 48 +++++++++++++++++++
> > 1 file changed, 48 insertions(+)
> > create mode 100644
> > Documentation/devicetree/bindings/iio/amplifiers/adi,hmc425a.yaml
> >
> > diff --git
> > a/Documentation/devicetree/bindings/iio/amplifiers/adi,hmc425a.yaml
> > b/Documentation/devicetree/bindings/iio/amplifiers/adi,hmc425a.yaml
> > new file mode 100644
> > index 000000000000..d800639c14a5
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/iio/amplifiers/adi,hmc425a.yaml
> > @@ -0,0 +1,48 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/iio/amplifiers/adi,hmc425a.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: HMC425A 6-bit Digital Step Attenuator
> > +
> > +maintainers:
> > +- Michael Hennerich <michael.hennerich@xxxxxxxxxx>
> > +- Beniamin Bia <beniamin.bia@xxxxxxxxxx>
> > +
> > +description: |
> > + Digital Step Attenuator IIO device with gpio interface.
> > + HMC425A 0.5 dB LSB GaAs MMIC 6-BIT DIGITAL POSITIVE CONTROL ATTENUATOR,
> > 2.2 - 8.0 GHz
> > +
> > https://www.analog.com/media/en/technical-documentation/data-sheets/hmc425A.pdf
> > +
> > +properties:
> > + compatible:
> > + enum:
> > + - adi,hmc425a
> > +
> > + vcc-supply: true
> > +
> > + ctrl-gpios:
> > + description:
> > + Must contain an array of 6 GPIO specifiers, referring to the GPIO
> > pins
> > + connected to the control pins V1-V6.
> > + maxItems: 6
>
> Does this force exactly 6?

I'm [also] a bit unsure whether to force this number in DT.
One idea [with this driver] would be to maybe have it support multiple of these
GPIO-controlled attenuators/amplifiers. And those could have a higher/lower
number of GPIOs.

In any case, we could enforce this as-is [for now], and see later when/if adding
new parts.
No strong opinion from my side about this though.

>
> > +
> > +required:
> > + - compatible
> > + - ctrl-gpios
> > +
> > +examples:
> > + - |
> > + #include <dt-bindings/gpio/gpio.h>
> > + gpio_hmc425a: hmc425a {
> > + compatible = "adi,hmc425a";
> > + ctrl-gpios = <&gpio 40 GPIO_ACTIVE_HIGH>,
> > + <&gpio 39 GPIO_ACTIVE_HIGH>,
> > + <&gpio 38 GPIO_ACTIVE_HIGH>,
> > + <&gpio 37 GPIO_ACTIVE_HIGH>,
> > + <&gpio 36 GPIO_ACTIVE_HIGH>,
> > + <&gpio 35 GPIO_ACTIVE_HIGH>;
> > + vcc-supply = <&foo>;
> > + };
> > +...