xref: /freebsd/sys/contrib/device-tree/Bindings/iio/amplifiers/adi,hmc425a.yaml (revision 01950c46b8155250f64374fb72fc11faa44bf099)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/iio/amplifiers/adi,hmc425a.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
784943d6fSEmmanuel Vadottitle: Analog Devices HMC425A and similar Digital Step Attenuators
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10c66ec88fSEmmanuel Vadot  - Michael Hennerich <michael.hennerich@analog.com>
11c66ec88fSEmmanuel Vadot
12c66ec88fSEmmanuel Vadotdescription: |
1384943d6fSEmmanuel Vadot  Digital Step Attenuator IIO devices with gpio interface.
1484943d6fSEmmanuel Vadot  Offer various frequency and attenuation ranges.
158d13bc63SEmmanuel Vadot  ADRF5750 2 dB LSB, 4-Bit, Silicon Digital Attenuator, 10 MHz to 60 GHz
168d13bc63SEmmanuel Vadot    https://www.analog.com/media/en/technical-documentation/data-sheets/adrf5740.pdf
178d13bc63SEmmanuel Vadot
18c66ec88fSEmmanuel Vadot  HMC425A 0.5 dB LSB GaAs MMIC 6-BIT DIGITAL POSITIVE CONTROL ATTENUATOR, 2.2 - 8.0 GHz
19c66ec88fSEmmanuel Vadot    https://www.analog.com/media/en/technical-documentation/data-sheets/hmc425A.pdf
20c66ec88fSEmmanuel Vadot
2184943d6fSEmmanuel Vadot  HMC540S 1 dB LSB Silicon MMIC 4-Bit Digital Positive Control Attenuator, 0.1 - 8 GHz
2284943d6fSEmmanuel Vadot    https://www.analog.com/media/en/technical-documentation/data-sheets/hmc540s.pdf
2384943d6fSEmmanuel Vadot
24*01950c46SEmmanuel Vadot  LTC6373 is a 3-Bit precision instrumentation amplifier with fully differential outputs
25*01950c46SEmmanuel Vadot    https://www.analog.com/media/en/technical-documentation/data-sheets/ltc6373.pdf
2684943d6fSEmmanuel Vadot
27c66ec88fSEmmanuel Vadotproperties:
28c66ec88fSEmmanuel Vadot  compatible:
29c66ec88fSEmmanuel Vadot    enum:
308d13bc63SEmmanuel Vadot      - adi,adrf5740
31c66ec88fSEmmanuel Vadot      - adi,hmc425a
3284943d6fSEmmanuel Vadot      - adi,hmc540s
33*01950c46SEmmanuel Vadot      - adi,ltc6373
34c66ec88fSEmmanuel Vadot
35c66ec88fSEmmanuel Vadot  vcc-supply: true
36c66ec88fSEmmanuel Vadot
37c66ec88fSEmmanuel Vadot  ctrl-gpios:
38c66ec88fSEmmanuel Vadot    description:
39*01950c46SEmmanuel Vadot      Must contain an array of GPIO specifiers, referring to the GPIO pins
40*01950c46SEmmanuel Vadot      connected to the control pins.
41*01950c46SEmmanuel Vadot        ADRF5740  - 4 GPIO connected to D2-D5
42*01950c46SEmmanuel Vadot        HMC540S   - 4 GPIO connected to V1-V4
43*01950c46SEmmanuel Vadot        HMC425A   - 6 GPIO connected to V1-V6
44*01950c46SEmmanuel Vadot        LTC6373   - 3 GPIO connected to A0-A2
45*01950c46SEmmanuel Vadot    minItems: 1
46*01950c46SEmmanuel Vadot    maxItems: 6
47*01950c46SEmmanuel Vadot
48*01950c46SEmmanuel VadotallOf:
49*01950c46SEmmanuel Vadot  - if:
50*01950c46SEmmanuel Vadot      properties:
51*01950c46SEmmanuel Vadot        compatible:
52*01950c46SEmmanuel Vadot          contains:
53*01950c46SEmmanuel Vadot            const: adi,hmc425a
54*01950c46SEmmanuel Vadot    then:
55*01950c46SEmmanuel Vadot      properties:
56*01950c46SEmmanuel Vadot        ctrl-gpios:
57c66ec88fSEmmanuel Vadot          minItems: 6
58c66ec88fSEmmanuel Vadot          maxItems: 6
59*01950c46SEmmanuel Vadot  - if:
60*01950c46SEmmanuel Vadot      properties:
61*01950c46SEmmanuel Vadot        compatible:
62*01950c46SEmmanuel Vadot          contains:
63*01950c46SEmmanuel Vadot            anyOf:
64*01950c46SEmmanuel Vadot              - const: adi,adrf5740
65*01950c46SEmmanuel Vadot              - const: adi,hmc540s
66*01950c46SEmmanuel Vadot    then:
67*01950c46SEmmanuel Vadot      properties:
68*01950c46SEmmanuel Vadot        ctrl-gpios:
69*01950c46SEmmanuel Vadot          minItems: 4
70*01950c46SEmmanuel Vadot          maxItems: 4
71*01950c46SEmmanuel Vadot  - if:
72*01950c46SEmmanuel Vadot      properties:
73*01950c46SEmmanuel Vadot        compatible:
74*01950c46SEmmanuel Vadot          contains:
75*01950c46SEmmanuel Vadot            const: adi,ltc6373
76*01950c46SEmmanuel Vadot    then:
77*01950c46SEmmanuel Vadot      properties:
78*01950c46SEmmanuel Vadot        ctrl-gpios:
79*01950c46SEmmanuel Vadot          minItems: 3
80*01950c46SEmmanuel Vadot          maxItems: 3
81c66ec88fSEmmanuel Vadot
82c66ec88fSEmmanuel Vadotrequired:
83c66ec88fSEmmanuel Vadot  - compatible
84c66ec88fSEmmanuel Vadot  - ctrl-gpios
85c66ec88fSEmmanuel Vadot
866be33864SEmmanuel VadotadditionalProperties: false
876be33864SEmmanuel Vadot
88c66ec88fSEmmanuel Vadotexamples:
89c66ec88fSEmmanuel Vadot  - |
90c66ec88fSEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
91c66ec88fSEmmanuel Vadot    gpio_hmc425a: hmc425a {
92c66ec88fSEmmanuel Vadot      compatible = "adi,hmc425a";
93c66ec88fSEmmanuel Vadot      ctrl-gpios = <&gpio 40 GPIO_ACTIVE_HIGH>,
94c66ec88fSEmmanuel Vadot        <&gpio 39 GPIO_ACTIVE_HIGH>,
95c66ec88fSEmmanuel Vadot        <&gpio 38 GPIO_ACTIVE_HIGH>,
96c66ec88fSEmmanuel Vadot        <&gpio 37 GPIO_ACTIVE_HIGH>,
97c66ec88fSEmmanuel Vadot        <&gpio 36 GPIO_ACTIVE_HIGH>,
98c66ec88fSEmmanuel Vadot        <&gpio 35 GPIO_ACTIVE_HIGH>;
99c66ec88fSEmmanuel Vadot      vcc-supply = <&foo>;
100c66ec88fSEmmanuel Vadot    };
101c66ec88fSEmmanuel Vadot...
102