diff mbox series

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

Message ID 20200129142301.13918-5-beniamin.bia@analog.com (mailing list archive)
State New, archived
Headers show
Series Add hmc425a support | expand

Commit Message

Beniamin Bia Jan. 29, 2020, 2:23 p.m. UTC
From: Michael Hennerich <michael.hennerich@analog.com>

Document support for Analog Devices MC425A Step Attenuator.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Beniamin Bia <beniamin.bia@analog.com>
---
 .../bindings/iio/amplifiers/adi,hmc425a.yaml  | 48 +++++++++++++++++++
 1 file changed, 48 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/amplifiers/adi,hmc425a.yaml

Comments

Jonathan Cameron Feb. 2, 2020, 10:53 a.m. UTC | #1
On Wed, 29 Jan 2020 16:23:00 +0200
Beniamin Bia <beniamin.bia@analog.com> wrote:

> From: Michael Hennerich <michael.hennerich@analog.com>
> 
> Document support for Analog Devices MC425A Step Attenuator.
> 
> Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
> Signed-off-by: Beniamin Bia <beniamin.bia@analog.com>
> ---
>  .../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@analog.com>
> +- Beniamin Bia <beniamin.bia@analog.com>
> +
> +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?

> +
> +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>;
> +    };
> +...
Alexandru Ardelean Feb. 3, 2020, 11:25 a.m. UTC | #2
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@analog.com> wrote:
> 
> > From: Michael Hennerich <michael.hennerich@analog.com>
> > 
> > Document support for Analog Devices MC425A Step Attenuator.
> > 
> > Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
> > Signed-off-by: Beniamin Bia <beniamin.bia@analog.com>
> > ---
> >  .../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@analog.com>
> > +- Beniamin Bia <beniamin.bia@analog.com>
> > +
> > +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>;
> > +    };
> > +...
Jonathan Cameron Feb. 6, 2020, 10:26 a.m. UTC | #3
On Mon, 3 Feb 2020 11:25:48 +0000
"Ardelean, Alexandru" <alexandru.Ardelean@analog.com> wrote:

> 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@analog.com> wrote:
> >   
> > > From: Michael Hennerich <michael.hennerich@analog.com>
> > > 
> > > Document support for Analog Devices MC425A Step Attenuator.
> > > 
> > > Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
> > > Signed-off-by: Beniamin Bia <beniamin.bia@analog.com>
> > > ---
> > >  .../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@analog.com>
> > > +- Beniamin Bia <beniamin.bia@analog.com>
> > > +
> > > +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.
It should be enforced for each of the devices supported.
So for devices with less, it would only allow precisely that
lesser number.

One slight quirk is someone crazy might wire certain pins to high or low
because they don't need the precision.

Not sure how we handle that one but can deal with it when it happens.

Jonathan

> 
> >   
> > > +
> > > +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>;
> > > +    };
> > > +...
Rob Herring Feb. 6, 2020, 5:35 p.m. UTC | #4
On Wed, 29 Jan 2020 16:23:00 +0200, Beniamin Bia wrote:
> From: Michael Hennerich <michael.hennerich@analog.com>
> 
> Document support for Analog Devices MC425A Step Attenuator.
> 
> Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
> Signed-off-by: Beniamin Bia <beniamin.bia@analog.com>
> ---
>  .../bindings/iio/amplifiers/adi,hmc425a.yaml  | 48 +++++++++++++++++++
>  1 file changed, 48 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/iio/amplifiers/adi,hmc425a.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>
diff mbox series

Patch

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@analog.com>
+- Beniamin Bia <beniamin.bia@analog.com>
+
+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
+
+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>;
+    };
+...