Re: [PATCH 5/5] dt-bindings: iio: adc: xilinx-xadc: convert to YAML format
From: David Lechner
Date: Thu Mar 19 2026 - 10:34:08 EST
On 3/19/26 8:52 AM, Sai Krishna Potthuri wrote:
> Hi Krzysztof,
>
> On 2/21/2026 4:08 PM, Krzysztof Kozlowski wrote:
>> On Fri, Feb 20, 2026 at 11:09:41AM +0530, Sai Krishna Potthuri wrote:
>>> Convert the xilinx-xadc.txt Devicetree binding to a YAML schema format
>>> and remove the old text binding.
>>>
>>> +
>>> + xlnx,channels:
>>> + $ref: '#/$defs/channels'
>>> +
>>> +allOf:
>>
>> Missing ref since you use unevaluatedProperties...
>>
>>> + - if:
>>> + required:
>>> + - xlnx,external-mux
>>> + properties:
>>> + xlnx,external-mux:
>>> + enum:
>>> + - single
>>> + - dual
>>> + then:
>>> + required:
>>> + - xlnx,external-mux-channel
>>> +
>>> +required:
>>> + - compatible
>>> + - reg
>>> +
>>> +unevaluatedProperties: false
>>
>> or you meant additionalProperties?
>>
>>> +
>>> +$defs:
>>
>> Why this is a def, not used directly? I see only one usage of this def.
>
> I am getting the below error if i define the patternProperties directly.
> Seems like complex vendor peroperties should be referenced via $ref.
> Please suggest if there is any better way to deal this.
It is hard to say without seeing the new version of what you wrote.
>
> linux-xlnx/Documentation/devicetree/bindings/iio/adc/xilinx-xadc.yaml: properties:xlnx,channels:type: 'boolean' was expected
> hint: A vendor boolean property can use "type: boolean"
> from schema $id: http://devicetree.org/meta-schemas/vendor-props.yaml#
> LINT ../Documentation/devicetree/bindings
> DTEX Documentation/devicetree/bindings/iio/adc/xilinx-xadc.example.dts
> DTC [C] Documentation/devicetree/bindings/iio/adc/xilinx-xadc.example.dtb
>
>
> Regards
> Sai Krishna
>
>>
>>> + channels:
>>> + type: object
>>> + description: List of external channels that are connected to the ADC
>>> + properties:
>>> + '#address-cells':
>>> + const: 1
>>> + '#size-cells':
>>> + const: 0
>>> +
>>> + patternProperties:
>>> + "^channel@([0-9]|1[0-6])$":
>>> + type: object
>>> + properties:
>>> + reg:
>>> + minimum: 0
>>> + maximum: 16
>>> + description: |
>>> + Pair of pins the channel is connected to:
>>> + 0: VP/VN
>>> + 1-16: VAUXP[0-15]/VAUXN[0-15]
>>> + Note each channel number should only be used at most once.
>>> +
>>> + xlnx,bipolar:
>>> + type: boolean
>>> + description: If set, the channel is used in bipolar mode
>>> +
>>> + required:
>>> + - reg
>>> +
>>> + unevaluatedProperties: false
>>