1*7b5f6511SKim Seer Paller# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*7b5f6511SKim Seer Paller# Copyright 2024 Analog Devices Inc. 3*7b5f6511SKim Seer Paller%YAML 1.2 4*7b5f6511SKim Seer Paller--- 5*7b5f6511SKim Seer Paller$id: http://devicetree.org/schemas/iio/frequency/adi,admfm2000.yaml# 6*7b5f6511SKim Seer Paller$schema: http://devicetree.org/meta-schemas/core.yaml# 7*7b5f6511SKim Seer Paller 8*7b5f6511SKim Seer Pallertitle: ADMFM2000 Dual Microwave Down Converter 9*7b5f6511SKim Seer Paller 10*7b5f6511SKim Seer Pallermaintainers: 11*7b5f6511SKim Seer Paller - Kim Seer Paller <kimseer.paller@analog.com> 12*7b5f6511SKim Seer Paller 13*7b5f6511SKim Seer Pallerdescription: 14*7b5f6511SKim Seer Paller Dual microwave down converter module with input RF and LO frequency ranges 15*7b5f6511SKim Seer Paller from 0.5 to 32 GHz and an output IF frequency range from 0.1 to 8 GHz. 16*7b5f6511SKim Seer Paller It consists of a LNA, mixer, IF filter, DSA, and IF amplifier for each down 17*7b5f6511SKim Seer Paller conversion path. 18*7b5f6511SKim Seer Paller 19*7b5f6511SKim Seer Pallerproperties: 20*7b5f6511SKim Seer Paller compatible: 21*7b5f6511SKim Seer Paller enum: 22*7b5f6511SKim Seer Paller - adi,admfm2000 23*7b5f6511SKim Seer Paller 24*7b5f6511SKim Seer Paller '#address-cells': 25*7b5f6511SKim Seer Paller const: 1 26*7b5f6511SKim Seer Paller 27*7b5f6511SKim Seer Paller '#size-cells': 28*7b5f6511SKim Seer Paller const: 0 29*7b5f6511SKim Seer Paller 30*7b5f6511SKim Seer PallerpatternProperties: 31*7b5f6511SKim Seer Paller "^channel@[0-1]$": 32*7b5f6511SKim Seer Paller type: object 33*7b5f6511SKim Seer Paller description: Represents a channel of the device. 34*7b5f6511SKim Seer Paller 35*7b5f6511SKim Seer Paller additionalProperties: false 36*7b5f6511SKim Seer Paller 37*7b5f6511SKim Seer Paller properties: 38*7b5f6511SKim Seer Paller reg: 39*7b5f6511SKim Seer Paller description: 40*7b5f6511SKim Seer Paller The channel number. 41*7b5f6511SKim Seer Paller minimum: 0 42*7b5f6511SKim Seer Paller maximum: 1 43*7b5f6511SKim Seer Paller 44*7b5f6511SKim Seer Paller adi,mixer-mode: 45*7b5f6511SKim Seer Paller description: 46*7b5f6511SKim Seer Paller Enable mixer mode for the channel. It downconverts RF between 5 GHz 47*7b5f6511SKim Seer Paller and 32 GHz to IF between 0.5 GHz and 8 GHz. If not present, the channel 48*7b5f6511SKim Seer Paller is in direct IF mode which bypasses the mixer and downconverts RF 49*7b5f6511SKim Seer Paller between 2 GHz and 8 GHz to IF between 0.5 GHz and 8 GHz. 50*7b5f6511SKim Seer Paller type: boolean 51*7b5f6511SKim Seer Paller 52*7b5f6511SKim Seer Paller switch-gpios: 53*7b5f6511SKim Seer Paller description: | 54*7b5f6511SKim Seer Paller GPIOs to select the RF path for the channel. The same state of CTRL-A 55*7b5f6511SKim Seer Paller and CTRL-B GPIOs is not permitted. 56*7b5f6511SKim Seer Paller CTRL-A CTRL-B CH1 Status CH2 Status 57*7b5f6511SKim Seer Paller 1 0 Direct IF mode Mixer mode 58*7b5f6511SKim Seer Paller 0 1 Mixer mode Direct IF mode 59*7b5f6511SKim Seer Paller 60*7b5f6511SKim Seer Paller items: 61*7b5f6511SKim Seer Paller - description: CTRL-A GPIO 62*7b5f6511SKim Seer Paller - description: CTRL-B GPIO 63*7b5f6511SKim Seer Paller 64*7b5f6511SKim Seer Paller attenuation-gpios: 65*7b5f6511SKim Seer Paller description: | 66*7b5f6511SKim Seer Paller Choice of attenuation: 67*7b5f6511SKim Seer Paller DSA-V4 DSA-V3 DSA-V2 DSA-V1 DSA-V0 68*7b5f6511SKim Seer Paller 1 1 1 1 1 0 dB 69*7b5f6511SKim Seer Paller 1 1 1 1 0 -1 dB 70*7b5f6511SKim Seer Paller 1 1 1 0 1 -2 dB 71*7b5f6511SKim Seer Paller 1 1 0 1 1 -4 dB 72*7b5f6511SKim Seer Paller 1 0 1 1 1 -8 dB 73*7b5f6511SKim Seer Paller 0 1 1 1 1 -16 dB 74*7b5f6511SKim Seer Paller 0 0 0 0 0 -31 dB 75*7b5f6511SKim Seer Paller 76*7b5f6511SKim Seer Paller items: 77*7b5f6511SKim Seer Paller - description: DSA-V0 GPIO 78*7b5f6511SKim Seer Paller - description: DSA-V1 GPIO 79*7b5f6511SKim Seer Paller - description: DSA-V2 GPIO 80*7b5f6511SKim Seer Paller - description: DSA-V3 GPIO 81*7b5f6511SKim Seer Paller - description: DSA-V4 GPIO 82*7b5f6511SKim Seer Paller 83*7b5f6511SKim Seer Paller required: 84*7b5f6511SKim Seer Paller - reg 85*7b5f6511SKim Seer Paller - switch-gpios 86*7b5f6511SKim Seer Paller - attenuation-gpios 87*7b5f6511SKim Seer Paller 88*7b5f6511SKim Seer Pallerrequired: 89*7b5f6511SKim Seer Paller - compatible 90*7b5f6511SKim Seer Paller 91*7b5f6511SKim Seer PalleradditionalProperties: false 92*7b5f6511SKim Seer Paller 93*7b5f6511SKim Seer Pallerexamples: 94*7b5f6511SKim Seer Paller - | 95*7b5f6511SKim Seer Paller #include <dt-bindings/gpio/gpio.h> 96*7b5f6511SKim Seer Paller converter { 97*7b5f6511SKim Seer Paller compatible = "adi,admfm2000"; 98*7b5f6511SKim Seer Paller 99*7b5f6511SKim Seer Paller #address-cells = <1>; 100*7b5f6511SKim Seer Paller #size-cells = <0>; 101*7b5f6511SKim Seer Paller 102*7b5f6511SKim Seer Paller channel@0 { 103*7b5f6511SKim Seer Paller reg = <0>; 104*7b5f6511SKim Seer Paller switch-gpios = <&gpio 1 GPIO_ACTIVE_LOW>, 105*7b5f6511SKim Seer Paller <&gpio 2 GPIO_ACTIVE_HIGH>; 106*7b5f6511SKim Seer Paller 107*7b5f6511SKim Seer Paller attenuation-gpios = <&gpio 17 GPIO_ACTIVE_LOW>, 108*7b5f6511SKim Seer Paller <&gpio 22 GPIO_ACTIVE_LOW>, 109*7b5f6511SKim Seer Paller <&gpio 23 GPIO_ACTIVE_LOW>, 110*7b5f6511SKim Seer Paller <&gpio 24 GPIO_ACTIVE_LOW>, 111*7b5f6511SKim Seer Paller <&gpio 25 GPIO_ACTIVE_LOW>; 112*7b5f6511SKim Seer Paller }; 113*7b5f6511SKim Seer Paller 114*7b5f6511SKim Seer Paller channel@1 { 115*7b5f6511SKim Seer Paller reg = <1>; 116*7b5f6511SKim Seer Paller adi,mixer-mode; 117*7b5f6511SKim Seer Paller switch-gpios = <&gpio 3 GPIO_ACTIVE_LOW>, 118*7b5f6511SKim Seer Paller <&gpio 4 GPIO_ACTIVE_HIGH>; 119*7b5f6511SKim Seer Paller 120*7b5f6511SKim Seer Paller attenuation-gpios = <&gpio 0 GPIO_ACTIVE_LOW>, 121*7b5f6511SKim Seer Paller <&gpio 5 GPIO_ACTIVE_LOW>, 122*7b5f6511SKim Seer Paller <&gpio 6 GPIO_ACTIVE_LOW>, 123*7b5f6511SKim Seer Paller <&gpio 16 GPIO_ACTIVE_LOW>, 124*7b5f6511SKim Seer Paller <&gpio 26 GPIO_ACTIVE_LOW>; 125*7b5f6511SKim Seer Paller }; 126*7b5f6511SKim Seer Paller }; 127*7b5f6511SKim Seer Paller... 128