brintos

brintos / linux-shallow public Read only

0
0
Text · 3.6 KiB · 2bcf4bb Raw
128 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2# Copyright 2024 Analog Devices Inc.3%YAML 1.24---5$id: http://devicetree.org/schemas/iio/frequency/adi,admfm2000.yaml#6$schema: http://devicetree.org/meta-schemas/core.yaml#7 8title: ADMFM2000 Dual Microwave Down Converter9 10maintainers:11  - Kim Seer Paller <kimseer.paller@analog.com>12 13description:14  Dual microwave down converter module with input RF and LO frequency ranges15  from 0.5 to 32 GHz and an output IF frequency range from 0.1 to 8 GHz.16  It consists of a LNA, mixer, IF filter, DSA, and IF amplifier for each down17  conversion path.18 19properties:20  compatible:21    enum:22      - adi,admfm200023 24  '#address-cells':25    const: 126 27  '#size-cells':28    const: 029 30patternProperties:31  "^channel@[0-1]$":32    type: object33    description: Represents a channel of the device.34 35    additionalProperties: false36 37    properties:38      reg:39        description:40          The channel number.41        minimum: 042        maximum: 143 44      adi,mixer-mode:45        description:46          Enable mixer mode for the channel. It downconverts RF between 5 GHz47          and 32 GHz to IF between 0.5 GHz and 8 GHz. If not present, the channel48          is in direct IF mode which bypasses the mixer and downconverts RF49          between 2 GHz and 8 GHz to IF between 0.5 GHz and 8 GHz.50        type: boolean51 52      switch-gpios:53        description: |54          GPIOs to select the RF path for the channel. The same state of CTRL-A55          and CTRL-B GPIOs is not permitted.56          CTRL-A   CTRL-B    CH1 Status        CH2 Status57          1        0         Direct IF mode    Mixer mode58          0        1         Mixer mode        Direct IF mode59 60        items:61          - description: CTRL-A GPIO62          - description: CTRL-B GPIO63 64      attenuation-gpios:65        description: |66          Choice of attenuation:67          DSA-V4  DSA-V3  DSA-V2  DSA-V1  DSA-V068          1       1       1       1       1        0 dB69          1       1       1       1       0        -1 dB70          1       1       1       0       1        -2 dB71          1       1       0       1       1        -4 dB72          1       0       1       1       1        -8 dB73          0       1       1       1       1        -16 dB74          0       0       0       0       0        -31 dB75 76        items:77          - description: DSA-V0 GPIO78          - description: DSA-V1 GPIO79          - description: DSA-V2 GPIO80          - description: DSA-V3 GPIO81          - description: DSA-V4 GPIO82 83    required:84      - reg85      - switch-gpios86      - attenuation-gpios87 88required:89  - compatible90 91additionalProperties: false92 93examples:94  - |95    #include <dt-bindings/gpio/gpio.h>96    converter {97      compatible = "adi,admfm2000";98 99      #address-cells = <1>;100      #size-cells = <0>;101 102      channel@0 {103        reg = <0>;104        switch-gpios = <&gpio 1 GPIO_ACTIVE_LOW>,105                       <&gpio 2 GPIO_ACTIVE_HIGH>;106 107        attenuation-gpios = <&gpio 17 GPIO_ACTIVE_LOW>,108                            <&gpio 22 GPIO_ACTIVE_LOW>,109                            <&gpio 23 GPIO_ACTIVE_LOW>,110                            <&gpio 24 GPIO_ACTIVE_LOW>,111                            <&gpio 25 GPIO_ACTIVE_LOW>;112      };113 114      channel@1 {115        reg = <1>;116        adi,mixer-mode;117        switch-gpios = <&gpio 3 GPIO_ACTIVE_LOW>,118                       <&gpio 4 GPIO_ACTIVE_HIGH>;119 120        attenuation-gpios = <&gpio 0 GPIO_ACTIVE_LOW>,121                            <&gpio 5 GPIO_ACTIVE_LOW>,122                            <&gpio 6 GPIO_ACTIVE_LOW>,123                            <&gpio 16 GPIO_ACTIVE_LOW>,124                            <&gpio 26 GPIO_ACTIVE_LOW>;125      };126    };127...128