On Tue, Jun 16, 2026 at 09:21:07AM +0100, Rodrigo Alencar wrote:
> Add GPIO property for RESET, LDAC and GAIN pin. RESET is active-low, LDAC
> is used to load DAC channels with values from input registers and GAIN
> can double the voltage in output channels. The gain-gpios property is
> not available to all supported parts. The adi,range-double property
> indicates that GAIN pin is hardwired to high in case gain-gpios is not
> set, otherwise it sets the initial value for the gain setting.
> 
> Acked-by: Conor Dooley <[email protected]>
> Signed-off-by: Rodrigo Alencar <[email protected]>
> ---
>  .../devicetree/bindings/iio/dac/adi,ad5696.yaml    | 41 
> +++++++++++++++++++++-
>  1 file changed, 40 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad5696.yaml 
> b/Documentation/devicetree/bindings/iio/dac/adi,ad5696.yaml
> index b5a88b03dc2f..c55158c464fd 100644
> --- a/Documentation/devicetree/bindings/iio/dac/adi,ad5696.yaml
> +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad5696.yaml
> @@ -37,14 +37,52 @@ properties:
>      description: |
>        The regulator supply for DAC reference voltage.
>  
> +  reset-gpios:
> +    description: Active-low RESET pin to reset the device.
> +    maxItems: 1
> +
> +  ldac-gpios:
> +    description:
> +      Active-low LDAC pin used to asynchronously update the DAC channels.
> +    maxItems: 1
> +
> +  gain-gpios:
> +    description:
> +      GAIN pin that sets a multiplier for the DAC output voltage. When high,
> +      the DAC output voltage is multiplied by 2, otherwise it is unchanged.
> +    maxItems: 1
> +
> +  adi,range-double:
> +    description:
> +      Sets the initial voltage output range from 0 to 2xVREF. On devices that
> +      have a GAIN pin and no gain-gpios property is set, this indicates the 
> pin
> +      is hardwired high.
> +    type: boolean
> +
>  required:
>    - compatible
>    - reg
>  
> -additionalProperties: false
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            anyOf:
> +              - const: adi,ad5311r
> +              - const: adi,ad5691r
> +              - const: adi,ad5692r
> +              - const: adi,ad5693
> +              - const: adi,ad5693r

Just 'enum' instead of anyOf+const.

> +    then:
> +      properties:
> +        gain-gpios: false
> +
> +unevaluatedProperties: false

sashiko is correct. No need for unevaluatedProperties here.

Rob

Reply via email to