Re: [PATCH v7 2/7] dt-bindings: thermal: add YAML schema for sun8i-thermal driver bindings
From: Maxime Ripard <mripard@kernel.org>
Date: 2019-12-19 09:12:47
Also in:
linux-devicetree, linux-pm, lkml
On Wed, Dec 18, 2019 at 02:27:00PM -0800, Vasily Khoruzhick wrote:
On Wed, Dec 18, 2019 at 2:00 PM Maxime Ripard [off-list ref] wrote:quoted
On Tue, Dec 17, 2019 at 08:21:16PM -0800, Vasily Khoruzhick wrote:quoted
From: Yangtao Li <tiny.windzz@gmail.com> sun8i-thermal driver supports thermal sensor in wide range of Allwinner SoCs. Add YAML schema for its bindings. Signed-off-by: Yangtao Li <tiny.windzz@gmail.com> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> --- .../thermal/allwinner,sun8i-a83t-ths.yaml | 146 ++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yamldiff --git a/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml b/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml new file mode 100644 index 000000000000..8768c2450633 --- /dev/null +++ b/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml@@ -0,0 +1,146 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/thermal/allwinner,sun8i-a83t-ths.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Allwinner SUN8I Thermal Controller Device Tree Bindings + +maintainers: + - Yangtao Li <tiny.windzz@gmail.com> + +properties: + compatible: + enum: + - allwinner,sun8i-a83t-ths + - allwinner,sun8i-h3-ths + - allwinner,sun8i-r40-ths + - allwinner,sun50i-a64-ths + - allwinner,sun50i-h5-ths + - allwinner,sun50i-h6-ths + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + resets: + maxItems: 1 + + nvmem-cells: + maxItems: 1 + description: Calibration data for thermal sensors + + nvmem-cell-names: + const: calibration + +allOf: + - if: + properties: + compatible: + contains: + const: allwinner,sun50i-h6-ths + + then: + properties: + clocks: + minItems: 1 + maxItems: 1When minItems and maxItems are equal, you can only set one, the other will be filled automatically.Is it documented anywhere? I have a feeling like I'm shooting in the dark. So far I've read Documentation/devicetree/writing-schema.rst, Documentation/devicetree/bindings/example-schema.yaml and few other schemas for inspiration but yet I don't have solid understanding how it's supposed to be written. Examples are pretty scarce and figuring out why certain construction doesn't work is pretty tricky.
It's somewhat documented with https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/example-schema.yaml#n80 and https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/example-schema.yaml#n102 But I guess it wasn't clear enough? Feel free to update it to something that would be better Maxime