Re: [PATCH v5] dt-bindings: iio: adc: Convert xilinx-xadc bindings to YAML schema
From: Rob Herring (Arm)
Date: Tue Nov 10 2026 - 13:53:51 EST
On Sat, 07 Nov 2026 19:19:55 +0530, Dileep Kumar Nagavarapu wrote:
> From: Pramod Maurya <pramod.nexgen@xxxxxxxxx>
>
> Convert the Xilinx XADC and UltraScale System Monitor device tree binding
> from the legacy plain-text format to a YAML.
>
> The new binding covers the same hardware and compatible strings:
> - xlnx,zynq-xadc-1.00.a (ZYNQ hardblock)
> - xlnx,axi-xadc-1.00.a (AXI softblock)
> - xlnx,system-management-wiz-1.3 (UltraScale System Management Wizard)
>
> The xlnx,channels subnode retains its legacy name (including the comma)
> for backwards compatibility with existing device trees.
>
> Move xlnx,channels under properties, as dt-schema now allows node names
> containing a comma for long-established bindings.Constrain the reg
> property of the channel subnodes to the valid channel range of 0 to
> 16 with minimum and maximum.
>
> Drop the redundant "type: boolean" from xlnx,bipolar, since its $ref to
> the flag type already implies it.
>
> Signed-off-by: Pramod Maurya <pramod.nexgen@xxxxxxxxx>
> Co-developed-by: Dileep Kumar Nagavarapu <dileepkumar.nagavarapu@xxxxxxx>
> Signed-off-by: Dileep Kumar Nagavarapu <dileepkumar.nagavarapu@xxxxxxx>
> ---
> This patch was originally posted by Pramod Maurya.
>
> Link:https://lore.kernel.org/all/20260515075736.172172-2-pramod.nexgen@xxxxxxxxx/
>
> I will be maintaining the patch going forward and posting updated
> revisions.
>
> Changes in v5:
> - Simplify the commit message: drop the mention of automated validation
> and remove the dt-schema PR reference
> - Use "hardblock" and "softblock" instead of "hardmacro" and "softmacro"
> for the Zynq and AXI XADC variants
> - Drop the clock description
> (Comments from Jonathan Cameron)
> - Drop the "|" literal block indicator from the clocks and
> xlnx,external-mux descriptions, as the formatting does not need to be
> preserved
> - Add "default: none" for xlnx,external-mux and remove the sentence about
> the behavior when it is omitted
> - Reduce the examples to a single one. Remove the ZYNQ/AXI/UltraScale
> origin comments and the two redundant examples. Add xlnx,bipolar to
> a channel in the remaining example
> - Add Sai Krishna Potthuri and Dileep Kumar Nagavarapu as additional
> maintainers in the binding and the MAINTAINERS entry, alongside
> Lars-Peter Clausen
> (Comments from Sashiko AI review)
> - Constrain reg in the channel subnodes to the valid range 0-16 with
> minimum/maximum
> - Reword the commit message to describe the valid range constraint
> (minimum and maximum)
>
> Changes in v4:
> - Move xlnx,channels from patternProperties: to properties: per Rob
> Herring's guidance (keywords.yaml: "Fixed strings belong in properties")
> This requires a companion dt-schema update to add xlnx,channels as an
> object-type exception in vendor-props.yaml (like adi,channels).
> - Fix reg constraints inside channel subnodes: remove items block with
> minimum/maximum which is invalid for cell arrays per cell.yaml; the
> valid channel range (0-16) is documented in the description instead.
> - Remove redundant type: boolean from xlnx,bipolar; the $ref to
> /schemas/types.yaml#/definitions/flag already implies boolean type.
> - Fix patternProperties regex for channel subnodes to "^channel@([0-9a-f]|10)$"
> covering all valid hex unit addresses for channels 0-16.
>
> Changes in v3:
> - Move xlnx,channels from properties: to patternProperties: to satisfy
> vendor-props.yaml meta-schema (reversed in v4, see above)
>
> Changes in v2:
> - Fix patternProperties regex to use lowercase hex unit addresses
> - Add allOf/if/then conditional requiring xlnx,external-mux-channel
> when xlnx,external-mux is "single" or "dual"
> ---
> .../bindings/iio/adc/xilinx-xadc.txt | 141 ---------------
> .../bindings/iio/adc/xlnx,xadc.yaml | 165 ++++++++++++++++++
> MAINTAINERS | 9 +
> 3 files changed, 174 insertions(+), 141 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/iio/adc/xilinx-xadc.txt
> create mode 100644 Documentation/devicetree/bindings/iio/adc/xlnx,xadc.yaml
>
Reviewed-by: Rob Herring (Arm) <robh@xxxxxxxxxx>