Re: [PATCH 5/5] dt-bindings: iio: adc: xilinx-xadc: convert to YAML format
From: Sai Krishna Potthuri
Date: Thu Mar 19 2026 - 11:55:47 EST
Hi David Lechner,
On 3/19/2026 9:05 PM, David Lechner wrote:
On 3/19/26 10:10 AM, Sai Krishna Potthuri wrote:
Hi David Lechner,
On 3/19/2026 8:28 PM, David Lechner wrote:
On 3/19/26 9:49 AM, Sai Krishna Potthuri wrote:
Hi David Lechner,
On 3/19/2026 7:53 PM, David Lechner wrote:
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.
In v1 series, i created $def and referenced this in xlnx,channels to avoid the error that i mentioned.
Is the code below the code that causes the error?
No, the below code is not creating the error but Krzysztof asked the question on this code,
"Why this is a def, not used directly? I see only one usage of this def."
I am saying if i don't use the def and use it directly i am seeing the error that i mentioned. So, asking is there any better way to handle this case other than using def.
If you could show us the actual code that is causing the error, then
we could perhaps spot a mistake or suggest an alternative.
Thanks. Here is the code that is causing the error
("properties:xlnx,channels:type: 'boolean' was expected").
xlnx,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
additionalProperties: false
required:
- '#address-cells'
- '#size-cells'
additionalProperties: false
Regards
Sai Krishna
Regards
Sai Krishna
v1 code:
xlnx,channels:
$ref: '#/$defs/channels'
$defs:
channels:
Is this indent bug just from copying to email or does it exist in
the source that is causing the error?
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
required:
- '#address-cells'
- '#size-cells'
unevaluatedProperties: false
Regards
Sai krishna
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