128 lines
3.6 KiB
YAML
128 lines
3.6 KiB
YAML
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||
|
# Copyright 2024 Analog Devices Inc.
|
||
|
%YAML 1.2
|
||
|
---
|
||
|
$id: http://devicetree.org/schemas/iio/frequency/adi,admfm2000.yaml#
|
||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
||
|
title: ADMFM2000 Dual Microwave Down Converter
|
||
|
|
||
|
maintainers:
|
||
|
- Kim Seer Paller <kimseer.paller@analog.com>
|
||
|
|
||
|
description:
|
||
|
Dual microwave down converter module with input RF and LO frequency ranges
|
||
|
from 0.5 to 32 GHz and an output IF frequency range from 0.1 to 8 GHz.
|
||
|
It consists of a LNA, mixer, IF filter, DSA, and IF amplifier for each down
|
||
|
conversion path.
|
||
|
|
||
|
properties:
|
||
|
compatible:
|
||
|
enum:
|
||
|
- adi,admfm2000
|
||
|
|
||
|
'#address-cells':
|
||
|
const: 1
|
||
|
|
||
|
'#size-cells':
|
||
|
const: 0
|
||
|
|
||
|
patternProperties:
|
||
|
"^channel@[0-1]$":
|
||
|
type: object
|
||
|
description: Represents a channel of the device.
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
properties:
|
||
|
reg:
|
||
|
description:
|
||
|
The channel number.
|
||
|
minimum: 0
|
||
|
maximum: 1
|
||
|
|
||
|
adi,mixer-mode:
|
||
|
description:
|
||
|
Enable mixer mode for the channel. It downconverts RF between 5 GHz
|
||
|
and 32 GHz to IF between 0.5 GHz and 8 GHz. If not present, the channel
|
||
|
is in direct IF mode which bypasses the mixer and downconverts RF
|
||
|
between 2 GHz and 8 GHz to IF between 0.5 GHz and 8 GHz.
|
||
|
type: boolean
|
||
|
|
||
|
switch-gpios:
|
||
|
description: |
|
||
|
GPIOs to select the RF path for the channel. The same state of CTRL-A
|
||
|
and CTRL-B GPIOs is not permitted.
|
||
|
CTRL-A CTRL-B CH1 Status CH2 Status
|
||
|
1 0 Direct IF mode Mixer mode
|
||
|
0 1 Mixer mode Direct IF mode
|
||
|
|
||
|
items:
|
||
|
- description: CTRL-A GPIO
|
||
|
- description: CTRL-B GPIO
|
||
|
|
||
|
attenuation-gpios:
|
||
|
description: |
|
||
|
Choice of attenuation:
|
||
|
DSA-V4 DSA-V3 DSA-V2 DSA-V1 DSA-V0
|
||
|
1 1 1 1 1 0 dB
|
||
|
1 1 1 1 0 -1 dB
|
||
|
1 1 1 0 1 -2 dB
|
||
|
1 1 0 1 1 -4 dB
|
||
|
1 0 1 1 1 -8 dB
|
||
|
0 1 1 1 1 -16 dB
|
||
|
0 0 0 0 0 -31 dB
|
||
|
|
||
|
items:
|
||
|
- description: DSA-V0 GPIO
|
||
|
- description: DSA-V1 GPIO
|
||
|
- description: DSA-V2 GPIO
|
||
|
- description: DSA-V3 GPIO
|
||
|
- description: DSA-V4 GPIO
|
||
|
|
||
|
required:
|
||
|
- reg
|
||
|
- switch-gpios
|
||
|
- attenuation-gpios
|
||
|
|
||
|
required:
|
||
|
- compatible
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |
|
||
|
#include <dt-bindings/gpio/gpio.h>
|
||
|
converter {
|
||
|
compatible = "adi,admfm2000";
|
||
|
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
channel@0 {
|
||
|
reg = <0>;
|
||
|
switch-gpios = <&gpio 1 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 2 GPIO_ACTIVE_HIGH>;
|
||
|
|
||
|
attenuation-gpios = <&gpio 17 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 22 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 23 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 24 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 25 GPIO_ACTIVE_LOW>;
|
||
|
};
|
||
|
|
||
|
channel@1 {
|
||
|
reg = <1>;
|
||
|
adi,mixer-mode;
|
||
|
switch-gpios = <&gpio 3 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 4 GPIO_ACTIVE_HIGH>;
|
||
|
|
||
|
attenuation-gpios = <&gpio 0 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 5 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 6 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 16 GPIO_ACTIVE_LOW>,
|
||
|
<&gpio 26 GPIO_ACTIVE_LOW>;
|
||
|
};
|
||
|
};
|
||
|
...
|