diff mbox series

ASoC: dt-bindings: ti,pcm512x: Convert to dtschema

Message ID 20240717071012.114786-1-animeshagarwal28@gmail.com (mailing list archive)
State Superseded
Headers show
Series ASoC: dt-bindings: ti,pcm512x: Convert to dtschema | expand

Commit Message

Animesh Agarwal July 17, 2024, 7:10 a.m. UTC
Convert the PCM512x and TAS575x audio CODECs/amplifiers bindings to DT
schema format. Add missing sound-dai-cells property.

Cc: Daniel Baluta <daniel.baluta@nxp.com>
Signed-off-by: Animesh Agarwal <animeshagarwal28@gmail.com>
---
 .../devicetree/bindings/sound/pcm512x.txt     |  53 ---------
 .../devicetree/bindings/sound/ti,pcm512x.yaml | 112 ++++++++++++++++++
 2 files changed, 112 insertions(+), 53 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/sound/pcm512x.txt
 create mode 100644 Documentation/devicetree/bindings/sound/ti,pcm512x.yaml

Comments

Krzysztof Kozlowski July 17, 2024, 12:10 p.m. UTC | #1
On 17/07/2024 09:10, Animesh Agarwal wrote:
> Convert the PCM512x and TAS575x audio CODECs/amplifiers bindings to DT
> schema format. Add missing sound-dai-cells property.
> 
> Cc: Daniel Baluta <daniel.baluta@nxp.com>
> Signed-off-by: Animesh Agarwal <animeshagarwal28@gmail.com>
> ---


> +
> +required:
> +  - compatible
> +  - reg
> +  - AVDD-supply
> +  - DVDD-supply
> +  - CPVDD-supply
> +
> +if:
> +  properties:
> +    compatible:
> +      contains:
> +        enum:
> +          - ti,tas5754
> +          - ti,tas5756
> +
> +then:
> +  properties:
> +    pll-in:

Please define properties in top-level properties list, not in
conditional. You can narrow the constraints per variant in conditional.


> +      description: GPIO pin used to connect the pll using <1> through <3>. The
> +        device will be configured for clock input on the given pll-in pin.
> +      $ref: /schemas/types.yaml#/definitions/uint32
> +      minimum: 1
> +      maximum: 3


Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/sound/pcm512x.txt b/Documentation/devicetree/bindings/sound/pcm512x.txt
deleted file mode 100644
index 47878a6df608..000000000000
--- a/Documentation/devicetree/bindings/sound/pcm512x.txt
+++ /dev/null
@@ -1,53 +0,0 @@ 
-PCM512x and TAS575x audio CODECs/amplifiers
-
-These devices support both I2C and SPI (configured with pin strapping
-on the board). The TAS575x devices only support I2C.
-
-Required properties:
-
-  - compatible : One of "ti,pcm5121", "ti,pcm5122", "ti,pcm5141",
-                 "ti,pcm5142", "ti,pcm5242", "ti,tas5754" or "ti,tas5756"
-
-  - reg : the I2C address of the device for I2C, the chip select
-          number for SPI.
-
-  - AVDD-supply, DVDD-supply, and CPVDD-supply : power supplies for the
-    device, as covered in bindings/regulator/regulator.txt
-
-Optional properties:
-
-  - clocks : A clock specifier for the clock connected as SCLK.  If this
-    is absent the device will be configured to clock from BCLK.  If pll-in
-    and pll-out are specified in addition to a clock, the device is
-    configured to accept clock input on a specified gpio pin.
-
-  - pll-in, pll-out : gpio pins used to connect the pll using <1>
-    through <6>.  The device will be configured for clock input on the
-    given pll-in pin and PLL output on the given pll-out pin.  An
-    external connection from the pll-out pin to the SCLK pin is assumed.
-    Caution: the TAS-desvices only support gpios 1,2 and 3
-
-Examples:
-
-	pcm5122: pcm5122@4c {
-		compatible = "ti,pcm5122";
-		reg = <0x4c>;
-
-		AVDD-supply = <&reg_3v3_analog>;
-		DVDD-supply = <&reg_1v8>;
-		CPVDD-supply = <&reg_3v3>;
-	};
-
-
-	pcm5142: pcm5142@4c {
-		compatible = "ti,pcm5142";
-		reg = <0x4c>;
-
-		AVDD-supply = <&reg_3v3_analog>;
-		DVDD-supply = <&reg_1v8>;
-		CPVDD-supply = <&reg_3v3>;
-
-		clocks = <&sck>;
-		pll-in = <3>;
-		pll-out = <6>;
-	};
diff --git a/Documentation/devicetree/bindings/sound/ti,pcm512x.yaml b/Documentation/devicetree/bindings/sound/ti,pcm512x.yaml
new file mode 100644
index 000000000000..a8635477d23e
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/ti,pcm512x.yaml
@@ -0,0 +1,112 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/ti,pcm512x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: PCM512x and TAS575x audio CODECs/amplifiers
+
+maintainers:
+  - Animesh Agarwal <animeshagarwal28@gmail.com>
+
+allOf:
+  - $ref: dai-common.yaml#
+
+properties:
+  compatible:
+    enum:
+      - ti,pcm5121
+      - ti,pcm5122
+      - ti,pcm5141
+      - ti,pcm5142
+      - ti,pcm5242
+      - ti,tas5754
+      - ti,tas5756
+
+  reg:
+    maxItems: 1
+
+  AVDD-supply: true
+
+  DVDD-supply: true
+
+  CPVDD-supply: true
+
+  clocks:
+    maxItems: 1
+    description: A clock specifier for the clock connected as SCLK. If this is
+      absent the device will be configured to clock from BCLK. If pll-in and
+      pll-out are specified in addition to a clock, the device is configured to
+      accept clock input on a specified gpio pin.
+
+  '#sound-dai-cells':
+    const: 0
+
+required:
+  - compatible
+  - reg
+  - AVDD-supply
+  - DVDD-supply
+  - CPVDD-supply
+
+if:
+  properties:
+    compatible:
+      contains:
+        enum:
+          - ti,tas5754
+          - ti,tas5756
+
+then:
+  properties:
+    pll-in:
+      description: GPIO pin used to connect the pll using <1> through <3>. The
+        device will be configured for clock input on the given pll-in pin.
+      $ref: /schemas/types.yaml#/definitions/uint32
+      minimum: 1
+      maximum: 3
+
+    pll-out:
+      description: GPIO pin used to connect the pll using <1> through <3>. The
+        device will be configured for PLL output on the given pll-out pin.  An
+        external connection from the pll-out pin to the SCLK pin is assumed.
+      $ref: /schemas/types.yaml#/definitions/uint32
+      minimum: 1
+      maximum: 3
+
+else:
+  properties:
+    pll-in:
+      description: GPIO pin used to connect the pll using <1> through <6>. The
+      device will be configured for clock input on the given pll-in pin.
+      $ref: /schemas/types.yaml#/definitions/uint32
+      minimum: 1
+      maximum: 6
+
+    pll-out:
+      description: GPIO pin used to connect the pll using <1> through <6>. The
+        device will be configured for PLL output on the given pll-out pin.  An
+        external connection from the pll-out pin to the SCLK pin is assumed.
+      $ref: /schemas/types.yaml#/definitions/uint32
+      minimum: 1
+      maximum: 6
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+        codec@4c {
+            compatible = "ti,pcm5142";
+            reg = <0x4c>;
+            AVDD-supply = <&reg_3v3_analog>;
+            DVDD-supply = <&reg_1v8>;
+            CPVDD-supply = <&reg_3v3>;
+            #sound-dai-cells = <0>;
+            clocks = <&sck>;
+            pll-in = <3>;
+            pll-out = <6>;
+        };
+    };