Documentation / devicetree / bindings / iio / amplifiers / adi,hmc425a.yaml


Based on kernel version 6.11. Page generated on 2024-09-24 08:21 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
# 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: Analog Devices HMC425A and similar Digital Step Attenuators

maintainers:
  - Michael Hennerich <michael.hennerich@analog.com>

description: |
  Digital Step Attenuator IIO devices with gpio interface.
  Offer various frequency and attenuation ranges.
  ADRF5750 2 dB LSB, 4-Bit, Silicon Digital Attenuator, 10 MHz to 60 GHz
    https://www.analog.com/media/en/technical-documentation/data-sheets/adrf5740.pdf
 
  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
 
  HMC540S 1 dB LSB Silicon MMIC 4-Bit Digital Positive Control Attenuator, 0.1 - 8 GHz
    https://www.analog.com/media/en/technical-documentation/data-sheets/hmc540s.pdf
 
  LTC6373 is a 3-Bit precision instrumentation amplifier with fully differential outputs
    https://www.analog.com/media/en/technical-documentation/data-sheets/ltc6373.pdf

properties:
  compatible:
    enum:
      - adi,adrf5740
      - adi,hmc425a
      - adi,hmc540s
      - adi,ltc6373

  vcc-supply: true

  ctrl-gpios:
    description:
      Must contain an array of GPIO specifiers, referring to the GPIO pins
      connected to the control pins.
        ADRF5740  - 4 GPIO connected to D2-D5
        HMC540S   - 4 GPIO connected to V1-V4
        HMC425A   - 6 GPIO connected to V1-V6
        LTC6373   - 3 GPIO connected to A0-A2
    minItems: 1
    maxItems: 6

allOf:
  - if:
      properties:
        compatible:
          contains:
            const: adi,hmc425a
    then:
      properties:
        ctrl-gpios:
          minItems: 6
          maxItems: 6
  - if:
      properties:
        compatible:
          contains:
            anyOf:
              - const: adi,adrf5740
              - const: adi,hmc540s
    then:
      properties:
        ctrl-gpios:
          minItems: 4
          maxItems: 4
  - if:
      properties:
        compatible:
          contains:
            const: adi,ltc6373
    then:
      properties:
        ctrl-gpios:
          minItems: 3
          maxItems: 3

required:
  - compatible
  - ctrl-gpios

additionalProperties: false

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>;
    };
...