Add devicetree bindings for adl8113.
Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
---
changes in v6:
- Use items list for ctrl-gpios instead of minItems/maxItems
- Simplify ctrl-gpios item descriptions (remove GPIO_ACTIVE_HIGH mentions)
- Remove maxItems (implied by items list)
.../bindings/iio/amplifiers/adi,adl8113.yaml | 87 +++++++++++++++++++
1 file changed, 87 insertions(+)
create mode 100644 Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml
diff --git a/Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml b/Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml
new file mode 100644
index 000000000000..28b3738cb675
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml
@@ -0,0 +1,87 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iio/amplifiers/adi,adl8113.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analog Devices ADL8113 Low Noise Amplifier with integrated bypass switches
+
+maintainers:
+ - Antoniu Miclaus <antoniu.miclaus@analog.com>
+
+description: |
+ The ADL8113 is a 10MHz to 12GHz Low Noise Amplifier with integrated bypass
+ switches controlled by two GPIO pins (VA and VB). The device supports four
+ operation modes:
+ - Internal Amplifier: VA=0, VB=0 - Signal passes through the internal LNA
+ - Internal Bypass: VA=1, VB=1 - Signal bypasses through internal path
+ - External Bypass A: VA=0, VB=1 - Signal routes from RFIN to OUT_A and from IN_A to RFOUT
+ - External Bypass B: VA=1, VB=0 - Signal routes from RFIN to OUT_B and from IN_B to RFOUT
+
+ https://www.analog.com/en/products/adl8113.html
+
+properties:
+ compatible:
+ const: adi,adl8113
+
+ vdd1-supply: true
+
+ vdd2-supply: true
+
+ vss2-supply: true
+
+ ctrl-gpios:
+ items:
+ - description: VA control pin
+ - description: VB control pin
+
+ adi,external-bypass-a-gain-db:
+ description:
+ Gain in dB of external amplifier connected to bypass path A (OUT_A/IN_A).
+ When specified, this gain value becomes selectable via the hardwaregain
+ attribute and automatically routes through the external A path.
+
+ adi,external-bypass-b-gain-db:
+ description:
+ Gain in dB of external amplifier connected to bypass path B (OUT_B/IN_B).
+ When specified, this gain value becomes selectable via the hardwaregain
+ attribute and automatically routes through the external B path.
+
+required:
+ - compatible
+ - ctrl-gpios
+ - vdd1-supply
+ - vdd2-supply
+ - vss2-supply
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ /* Basic configuration with only internal paths */
+ amplifier {
+ compatible = "adi,adl8113";
+ ctrl-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>,
+ <&gpio 23 GPIO_ACTIVE_HIGH>;
+ vdd1-supply = <&vdd1_5v>;
+ vdd2-supply = <&vdd2_3v3>;
+ vss2-supply = <&vss2_neg>;
+ };
+
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ /* Configuration with external bypass amplifiers */
+ amplifier {
+ compatible = "adi,adl8113";
+ ctrl-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>,
+ <&gpio 25 GPIO_ACTIVE_HIGH>;
+ vdd1-supply = <&vdd1_5v>;
+ vdd2-supply = <&vdd2_3v3>;
+ vss2-supply = <&vss2_neg>;
+ adi,external-bypass-a-gain-db = <20>; /* 20dB external amp on path A */
+ adi,external-bypass-b-gain-db = <6>; /* 6dB external amp on path B */
+ };
+...
--
2.43.0
On Fri, 05 Dec 2025 16:40:40 +0200, Antoniu Miclaus wrote: > Add devicetree bindings for adl8113. > > Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com> > --- > changes in v6: > - Use items list for ctrl-gpios instead of minItems/maxItems > - Simplify ctrl-gpios item descriptions (remove GPIO_ACTIVE_HIGH mentions) > - Remove maxItems (implied by items list) > > .../bindings/iio/amplifiers/adi,adl8113.yaml | 87 +++++++++++++++++++ > 1 file changed, 87 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml > Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
On Fri, 5 Dec 2025 16:40:40 +0200
Antoniu Miclaus <antoniu.miclaus@analog.com> wrote:
> Add devicetree bindings for adl8113.
If you roll a v7 I'd add some description of the 'interesting'
bit in here - which is the gains for the two external bypass paths.
I like the solution but i would like more eyes to focus on that!
Other than that this looks good to me. Maybe I'll add something
to this description if I apply this version.
Jonathan
>
> Signed-off-by: Antoniu Miclaus <antoniu.miclaus@analog.com>
> ---
> changes in v6:
> - Use items list for ctrl-gpios instead of minItems/maxItems
> - Simplify ctrl-gpios item descriptions (remove GPIO_ACTIVE_HIGH mentions)
> - Remove maxItems (implied by items list)
>
> .../bindings/iio/amplifiers/adi,adl8113.yaml | 87 +++++++++++++++++++
> 1 file changed, 87 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml b/Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml
> new file mode 100644
> index 000000000000..28b3738cb675
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/amplifiers/adi,adl8113.yaml
> @@ -0,0 +1,87 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/amplifiers/adi,adl8113.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Analog Devices ADL8113 Low Noise Amplifier with integrated bypass switches
> +
> +maintainers:
> + - Antoniu Miclaus <antoniu.miclaus@analog.com>
> +
> +description: |
> + The ADL8113 is a 10MHz to 12GHz Low Noise Amplifier with integrated bypass
> + switches controlled by two GPIO pins (VA and VB). The device supports four
> + operation modes:
> + - Internal Amplifier: VA=0, VB=0 - Signal passes through the internal LNA
> + - Internal Bypass: VA=1, VB=1 - Signal bypasses through internal path
> + - External Bypass A: VA=0, VB=1 - Signal routes from RFIN to OUT_A and from IN_A to RFOUT
> + - External Bypass B: VA=1, VB=0 - Signal routes from RFIN to OUT_B and from IN_B to RFOUT
> +
> + https://www.analog.com/en/products/adl8113.html
> +
> +properties:
> + compatible:
> + const: adi,adl8113
> +
> + vdd1-supply: true
> +
> + vdd2-supply: true
> +
> + vss2-supply: true
> +
> + ctrl-gpios:
> + items:
> + - description: VA control pin
> + - description: VB control pin
> +
> + adi,external-bypass-a-gain-db:
> + description:
> + Gain in dB of external amplifier connected to bypass path A (OUT_A/IN_A).
> + When specified, this gain value becomes selectable via the hardwaregain
> + attribute and automatically routes through the external A path.
> +
> + adi,external-bypass-b-gain-db:
> + description:
> + Gain in dB of external amplifier connected to bypass path B (OUT_B/IN_B).
> + When specified, this gain value becomes selectable via the hardwaregain
> + attribute and automatically routes through the external B path.
> +
> +required:
> + - compatible
> + - ctrl-gpios
> + - vdd1-supply
> + - vdd2-supply
> + - vss2-supply
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> +
> + /* Basic configuration with only internal paths */
> + amplifier {
> + compatible = "adi,adl8113";
> + ctrl-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>,
> + <&gpio 23 GPIO_ACTIVE_HIGH>;
> + vdd1-supply = <&vdd1_5v>;
> + vdd2-supply = <&vdd2_3v3>;
> + vss2-supply = <&vss2_neg>;
> + };
> +
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> +
> + /* Configuration with external bypass amplifiers */
> + amplifier {
> + compatible = "adi,adl8113";
> + ctrl-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>,
> + <&gpio 25 GPIO_ACTIVE_HIGH>;
> + vdd1-supply = <&vdd1_5v>;
> + vdd2-supply = <&vdd2_3v3>;
> + vss2-supply = <&vss2_neg>;
> + adi,external-bypass-a-gain-db = <20>; /* 20dB external amp on path A */
> + adi,external-bypass-b-gain-db = <6>; /* 6dB external amp on path B */
> + };
> +...
© 2016 - 2025 Red Hat, Inc.