diff mbox series

[v1] ASoC: dt-bindings: Add tas2505 audio amplifier

Message ID 20230712044006.48456-1-luminlong@139.com (mailing list archive)
State New, archived
Headers show
Series [v1] ASoC: dt-bindings: Add tas2505 audio amplifier | expand

Commit Message

Kevin Lu July 12, 2023, 4:40 a.m. UTC
Create tas2505.yaml for tas2505.

Signed-off-by: Kevin Lu <luminlong@139.com>
---
 .../devicetree/bindings/sound/tas2505.yaml    | 72 +++++++++++++++++++
 1 file changed, 72 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/tas2505.yaml

Comments

Rob Herring July 12, 2023, 5:15 a.m. UTC | #1
On Wed, 12 Jul 2023 12:40:06 +0800, Kevin Lu wrote:
> Create tas2505.yaml for tas2505.
> 
> Signed-off-by: Kevin Lu <luminlong@139.com>
> ---
>  .../devicetree/bindings/sound/tas2505.yaml    | 72 +++++++++++++++++++
>  1 file changed, 72 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/tas2505.yaml
> 

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:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/tas2505.example.dtb: codec@18: 'clocks' is a required property
	from schema $id: http://devicetree.org/schemas/sound/ti,tlv320aic32x4.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/tas2505.example.dtb: codec@18: 'clock-names' is a required property
	from schema $id: http://devicetree.org/schemas/sound/ti,tlv320aic32x4.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/tas2505.example.dtb: codec@18: 'iov-supply' is a required property
	from schema $id: http://devicetree.org/schemas/sound/ti,tlv320aic32x4.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/tas2505.example.dtb: codec@18: 'av-supply' is a required property
	from schema $id: http://devicetree.org/schemas/sound/ti,tlv320aic32x4.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/tas2505.example.dtb: codec@18: 'dv-supply' is a required property
	from schema $id: http://devicetree.org/schemas/sound/ti,tlv320aic32x4.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/tas2505.example.dtb: codec@18: 'clock-source' does not match any of the regexes: 'pinctrl-[0-9]+'
	from schema $id: http://devicetree.org/schemas/sound/ti,tlv320aic32x4.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230712044006.48456-1-luminlong@139.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

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 after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
Krzysztof Kozlowski July 12, 2023, 5:25 a.m. UTC | #2
On 12/07/2023 06:40, Kevin Lu wrote:
> Create tas2505.yaml for tas2505.
> 
> Signed-off-by: Kevin Lu <luminlong@139.com>
> ---
>  .../devicetree/bindings/sound/tas2505.yaml    | 72 +++++++++++++++++++
>  1 file changed, 72 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/tas2505.yaml

Filename like compatible.

> 
> diff --git a/Documentation/devicetree/bindings/sound/tas2505.yaml b/Documentation/devicetree/bindings/sound/tas2505.yaml
> new file mode 100644
> index 0000000..6cc3fe4
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/tas2505.yaml
> @@ -0,0 +1,72 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +# Copyright (C) 2019 Texas Instruments Incorporated
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/sound/tas2505.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"

Drop quotes

> +
> +title: Texas Instruments TAS2505 Mono Audio Amplifier
> +
> +maintainers:
> +  - Kevin Lu <kevin-lu@ti.com>
> +
> +description: |
> +  The TAS2505 is a mono Class-D speaker amp that supports both Digital
> +  and Analog inputs. The device is ideal for automotive instrument cluster,
> +  emergency call (eCall), and telematics applications. Direct I2S input
> +  removes the need for an external DAC in the audio signal path.
> +  An on-chip PLL provides the high speed clock needed by the DSP.
> +  The volume level is register controlled.
> +
> +  Specifications about the audio amplifier can be found at:
> +    https://www.ti.com/lit/gpn/tas2505
> +
> +allOf:
> +  - $ref: dai-common.yaml#
> +
> +properties:
> +  compatible:
> +    enum:
> +      - ti,tas2505

Why are you adding duplicated binding?

> +
> +  reg:
> +    maxItems: 1
> +    description: |
> +       I2C address of the device can be set to 0x18.> +
> +  reset-gpios:
> +    maxItems: 1
> +    description: GPIO used to reset the device.

Drop description, it's obvious.

> +
> +  clock-source:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description: Sets TDM clock sourse.

source, but anyway that is not the way to set clocks. Use "clocks"
property for your future bindings.

> +    enum:
> +      - 0 # Select MLCK
> +      - 1 # Select BLCK
> +
> +  '#sound-dai-cells':
> +    # The codec has a single DAI, the #sound-dai-cells=<1>; case is left in for backward
> +    # compatibility but is deprecated.

This is the first submission so there is no "deprecated" or "backwards
compatibility".


Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/sound/tas2505.yaml b/Documentation/devicetree/bindings/sound/tas2505.yaml
new file mode 100644
index 0000000..6cc3fe4
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/tas2505.yaml
@@ -0,0 +1,72 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (C) 2019 Texas Instruments Incorporated
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/sound/tas2505.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Texas Instruments TAS2505 Mono Audio Amplifier
+
+maintainers:
+  - Kevin Lu <kevin-lu@ti.com>
+
+description: |
+  The TAS2505 is a mono Class-D speaker amp that supports both Digital
+  and Analog inputs. The device is ideal for automotive instrument cluster,
+  emergency call (eCall), and telematics applications. Direct I2S input
+  removes the need for an external DAC in the audio signal path.
+  An on-chip PLL provides the high speed clock needed by the DSP.
+  The volume level is register controlled.
+
+  Specifications about the audio amplifier can be found at:
+    https://www.ti.com/lit/gpn/tas2505
+
+allOf:
+  - $ref: dai-common.yaml#
+
+properties:
+  compatible:
+    enum:
+      - ti,tas2505
+
+  reg:
+    maxItems: 1
+    description: |
+       I2C address of the device can be set to 0x18.
+
+  reset-gpios:
+    maxItems: 1
+    description: GPIO used to reset the device.
+
+  clock-source:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: Sets TDM clock sourse.
+    enum:
+      - 0 # Select MLCK
+      - 1 # Select BLCK
+
+  '#sound-dai-cells':
+    # The codec has a single DAI, the #sound-dai-cells=<1>; case is left in for backward
+    # compatibility but is deprecated.
+    enum: [0, 1]
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+
+examples:
+  - |
+   #include <dt-bindings/gpio/gpio.h>
+   i2c {
+     #address-cells = <1>;
+     #size-cells = <0>;
+     codec: codec@18 {
+       compatible = "ti,tas2505";
+       reg = <0x18>;
+       #sound-dai-cells = <0>;
+       reset-gpios = <&gpio4 21 GPIO_ACTIVE_LOW>;
+       clock-source = <0>;
+     };
+   };