2022-07-05 16:52:32

by Ryan.Wanner

[permalink] [raw]
Subject: [PATCH] dt-bindings: sound: Convert atmel CLASSD to json-schema

From: Ryan Wanner <[email protected]>

Convert atmel CLASSD devicetree binding to json-schema.
Change file name to match json-scheme naming.

Signed-off-by: Ryan Wanner <[email protected]>
---
.../bindings/sound/atmel,sama5d2-classd.yaml | 111 ++++++++++++++++++
.../bindings/sound/atmel-classd.txt | 55 ---------
2 files changed, 111 insertions(+), 55 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/atmel,sama5d2-classd.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/atmel-classd.txt

diff --git a/Documentation/devicetree/bindings/sound/atmel,sama5d2-classd.yaml b/Documentation/devicetree/bindings/sound/atmel,sama5d2-classd.yaml
new file mode 100644
index 000000000000..6daf120686a7
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/atmel,sama5d2-classd.yaml
@@ -0,0 +1,111 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+# Copyright (C) 2022 Microchip Technology, Inc. and its subsidiaries
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/atmel,classd.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Atmel ClassD driver under ALSA SoC architecture
+
+maintainers:
+ - Nicolas Ferre <[email protected]>
+ - Alexandre Belloni <[email protected]>
+ - Claudiu Beznea <[email protected]>
+
+description:
+ The Audio Class D Amplifier (CLASSD) is a digital input, Pulse Width Modulated (PWM)
+ output stereo Class D amplifier.
+
+properties:
+ compatible:
+ const: atmel,sama5d2-classd
+
+ reg:
+ maxItems: 1
+ description:
+ Should contain ClassD registers location and length.
+
+ interrupts:
+ maxItems: 1
+ description:
+ Should contain the IRQ line for the ClassD.
+
+ dmas:
+ description:
+ One DMA specifiers as described in atmel-dma.txt and dma.txt files.
+ maxItems: 1
+
+ dma-names:
+ const: tx
+
+ clocks:
+ maxItems: 2
+ description: Please refer to clock-bindings.txt.
+
+ clock-names:
+ items:
+ - const: pclk
+ - const: gclk
+
+ assigned-clocks:
+ maxItems: 1
+ description: classd_gclk
+
+ atmel,model:
+ $ref: /schemas/types.yaml#/definitions/string
+ description: The user-visible name of this sound complex.
+ default: CLASSD
+
+ atmel,pwm-type:
+ $ref: /schemas/types.yaml#/definitions/string
+ enum:
+ - single
+ - diff
+ default: single
+ description: PWM modulation type, "single" or "diff".
+
+ atmel,non-overlap-time:
+ description:
+ Set non-overlapping time, the unit is nanosecond(ns).
+ Non-overlapping will be disabled if not specified.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 5
+ - 10
+ - 15
+ - 20
+ default: 10
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - dmas
+ - dma-names
+ - clock-names
+ - clocks
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/dma/at91.h>
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+ classd: sound@fc048000 {
+ compatible = "atmel,sama5d2-classd";
+ reg = <0xfc048000 0x100>;
+ interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>;
+ dmas = <&dma0
+ (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
+ | AT91_XDMAC_DT_PERID(47))>;
+ dma-names = "tx";
+ clocks = <&classd_clk>, <&classd_gclk>;
+ clock-names = "pclk", "gclk";
+ assigned-clocks = <&classd_gclk>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_classd_default>;
+ atmel,model = "classd @ SAMA5D2-Xplained";
+ atmel,pwm-type = "diff";
+ atmel,non-overlap-time = <10>;
+ };
diff --git a/Documentation/devicetree/bindings/sound/atmel-classd.txt b/Documentation/devicetree/bindings/sound/atmel-classd.txt
deleted file mode 100644
index 898551076382..000000000000
--- a/Documentation/devicetree/bindings/sound/atmel-classd.txt
+++ /dev/null
@@ -1,55 +0,0 @@
-* Atmel ClassD driver under ALSA SoC architecture
-
-Required properties:
-- compatible
- Should be "atmel,sama5d2-classd".
-- reg
- Should contain ClassD registers location and length.
-- interrupts
- Should contain the IRQ line for the ClassD.
-- dmas
- One DMA specifiers as described in atmel-dma.txt and dma.txt files.
-- dma-names
- Must be "tx".
-- clock-names
- Tuple listing input clock names.
- Required elements: "pclk" and "gclk".
-- clocks
- Please refer to clock-bindings.txt.
-- assigned-clocks
- Should be <&classd_gclk>.
-
-Optional properties:
-- pinctrl-names, pinctrl-0
- Please refer to pinctrl-bindings.txt.
-- atmel,model
- The user-visible name of this sound complex.
- The default value is "CLASSD".
-- atmel,pwm-type
- PWM modulation type, "single" or "diff".
- The default value is "single".
-- atmel,non-overlap-time
- Set non-overlapping time, the unit is nanosecond(ns).
- There are four values,
- <5>, <10>, <15>, <20>, the default value is <10>.
- Non-overlapping will be disabled if not specified.
-
-Example:
-classd: classd@fc048000 {
- compatible = "atmel,sama5d2-classd";
- reg = <0xfc048000 0x100>;
- interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>;
- dmas = <&dma0
- (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
- | AT91_XDMAC_DT_PERID(47))>;
- dma-names = "tx";
- clocks = <&classd_clk>, <&classd_gclk>;
- clock-names = "pclk", "gclk";
- assigned-clocks = <&classd_gclk>;
-
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_classd_default>;
- atmel,model = "classd @ SAMA5D2-Xplained";
- atmel,pwm-type = "diff";
- atmel,non-overlap-time = <10>;
-};
--
2.34.1


2022-07-05 18:28:41

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: sound: Convert atmel CLASSD to json-schema

On 05/07/2022 18:30, [email protected] wrote:
> From: Ryan Wanner <[email protected]>
>
> Convert atmel CLASSD devicetree binding to json-schema.
> Change file name to match json-scheme naming.
>
> Signed-off-by: Ryan Wanner <[email protected]>
> ---
> .../bindings/sound/atmel,sama5d2-classd.yaml | 111 ++++++++++++++++++
> .../bindings/sound/atmel-classd.txt | 55 ---------
> 2 files changed, 111 insertions(+), 55 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/sound/atmel,sama5d2-classd.yaml
> delete mode 100644 Documentation/devicetree/bindings/sound/atmel-classd.txt
>

All comments from your other patch apply here as well. It's easier to
send them in a patchset...


Best regards,
Krzysztof

2022-07-05 19:31:59

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: sound: Convert atmel CLASSD to json-schema

On Tue, 05 Jul 2022 09:30:46 -0700, [email protected] wrote:
> From: Ryan Wanner <[email protected]>
>
> Convert atmel CLASSD devicetree binding to json-schema.
> Change file name to match json-scheme naming.
>
> Signed-off-by: Ryan Wanner <[email protected]>
> ---
> .../bindings/sound/atmel,sama5d2-classd.yaml | 111 ++++++++++++++++++
> .../bindings/sound/atmel-classd.txt | 55 ---------
> 2 files changed, 111 insertions(+), 55 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/sound/atmel,sama5d2-classd.yaml
> delete mode 100644 Documentation/devicetree/bindings/sound/atmel-classd.txt
>

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
./Documentation/devicetree/bindings/sound/atmel,sama5d2-classd.yaml: $id: relative path/filename doesn't match actual path or filename
expected: http://devicetree.org/schemas/sound/atmel,sama5d2-classd.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/patch/

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.