2021-09-02 05:56:17

by Sameer Pujar

[permalink] [raw]
Subject: [PATCH v2 0/3] Convert name-prefix doc to json-schema

Following are the changes:
- Add json-schema for 'sound-name-prefix' documentation under
'name-perfix.yaml'
- Use schema references wherever needed.
- Remove txt based doc


Changelog
=========

v1 -> v2
--------
* Provide top reference to name-prefix.yaml as suggested by Rob
for patch 2/3
* Dropped couple of unreachable email ids from Cc list in commit
message of patch 2/3
* No changes in remaining patches


Sameer Pujar (3):
ASoC: Add json-schema documentation for sound-name-prefix
ASoC: Use schema reference for sound-name-prefix
ASoC: Remove name-prefix.txt

.../devicetree/bindings/sound/name-prefix.txt | 24 ---------------
.../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
.../bindings/sound/nvidia,tegra186-dspk.yaml | 9 ++----
.../bindings/sound/nvidia,tegra210-dmic.yaml | 9 ++----
.../bindings/sound/nvidia,tegra210-i2s.yaml | 9 ++----
.../devicetree/bindings/sound/nxp,tfa989x.yaml | 9 ++----
Documentation/devicetree/bindings/sound/rt5659.txt | 2 +-
.../bindings/sound/simple-audio-mux.yaml | 9 ++----
8 files changed, 51 insertions(+), 55 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/sound/name-prefix.txt
create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml

--
2.7.4


2021-09-02 05:56:17

by Sameer Pujar

[permalink] [raw]
Subject: [PATCH v2 1/3] ASoC: Add json-schema documentation for sound-name-prefix

The 'sound-name-prefix' is used to prepend suitable strings to a
component widgets or controls. This is helpful when there are
multiple instances of the same component. Add relevant json-schema
and is inspired from sound-name-prefix.txt documentation.

Signed-off-by: Sameer Pujar <[email protected]>
Cc: Jerome Brunet <[email protected]>
Cc: Rob Herring <[email protected]>
---
.../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
1 file changed, 35 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml

diff --git a/Documentation/devicetree/bindings/sound/name-prefix.yaml b/Documentation/devicetree/bindings/sound/name-prefix.yaml
new file mode 100644
index 00000000..b58cc9e
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/name-prefix.yaml
@@ -0,0 +1,35 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/name-prefix.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Component sound name prefix
+
+maintainers:
+ - Jerome Brunet <[email protected]>
+
+properties:
+ sound-name-prefix:
+ $ref: /schemas/types.yaml#/definitions/string
+ description: |
+ Card implementing the routing property define the connection between
+ audio components as list of string pair. Component using the same
+ sink/source names may use this property to prepend the name of their
+ sinks/sources with the provided string.
+
+additionalProperties: true
+
+examples:
+ - |
+ analog-amplifier@0 {
+ compatible = "simple-audio-amplifier";
+ sound-name-prefix = "FRONT";
+ };
+
+ analog-amplifier@1 {
+ compatible = "simple-audio-amplifier";
+ sound-name-prefix = "BACK";
+ };
+
+...
--
2.7.4

2021-09-02 05:58:22

by Sameer Pujar

[permalink] [raw]
Subject: [PATCH v2 3/3] ASoC: Remove name-prefix.txt

Since schema name-prefix.yaml is available and references are updated,
remove txt based doc.

Signed-off-by: Sameer Pujar <[email protected]>
Cc: Jerome Brunet <[email protected]>
Cc: Rob Herring <[email protected]>
---
.../devicetree/bindings/sound/name-prefix.txt | 24 ----------------------
1 file changed, 24 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/sound/name-prefix.txt

diff --git a/Documentation/devicetree/bindings/sound/name-prefix.txt b/Documentation/devicetree/bindings/sound/name-prefix.txt
deleted file mode 100644
index 6457759..00000000
--- a/Documentation/devicetree/bindings/sound/name-prefix.txt
+++ /dev/null
@@ -1,24 +0,0 @@
-Name prefix:
-
-Card implementing the routing property define the connection between
-audio components as list of string pair. Component using the same
-sink/source names may use the name prefix property to prepend the
-name of their sinks/sources with the provided string.
-
-Optional name prefix property:
-- sound-name-prefix : string using as prefix for the sink/source names of
- the component.
-
-Example: Two instances of the same component.
-
-amp0: analog-amplifier@0 {
- compatible = "simple-audio-amplifier";
- enable-gpios = <&gpio GPIOH_3 0>;
- sound-name-prefix = "FRONT";
-};
-
-amp1: analog-amplifier@1 {
- compatible = "simple-audio-amplifier";
- enable-gpios = <&gpio GPIOH_4 0>;
- sound-name-prefix = "BACK";
-};
--
2.7.4

2021-09-02 05:58:22

by Sameer Pujar

[permalink] [raw]
Subject: [PATCH v2 2/3] ASoC: Use schema reference for sound-name-prefix

Use schema reference for 'sound-name-prefix' property wherever
necessary.

Signed-off-by: Sameer Pujar <[email protected]>
Cc: Jerome Brunet <[email protected]>
Cc: Stephan Gerhold <[email protected]>
Cc: Rob Herring <[email protected]>
---
.../devicetree/bindings/sound/nvidia,tegra186-dspk.yaml | 9 +++------
.../devicetree/bindings/sound/nvidia,tegra210-dmic.yaml | 9 +++------
Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml | 9 +++------
Documentation/devicetree/bindings/sound/nxp,tfa989x.yaml | 9 +++------
Documentation/devicetree/bindings/sound/rt5659.txt | 2 +-
Documentation/devicetree/bindings/sound/simple-audio-mux.yaml | 9 +++------
6 files changed, 16 insertions(+), 31 deletions(-)

diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra186-dspk.yaml b/Documentation/devicetree/bindings/sound/nvidia,tegra186-dspk.yaml
index 5f6b37c..0912d3e 100644
--- a/Documentation/devicetree/bindings/sound/nvidia,tegra186-dspk.yaml
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra186-dspk.yaml
@@ -17,6 +17,9 @@ maintainers:
- Jon Hunter <[email protected]>
- Sameer Pujar <[email protected]>

+allOf:
+ - $ref: name-prefix.yaml#
+
properties:
$nodename:
pattern: "^dspk@[0-9a-f]*$"
@@ -48,12 +51,6 @@ properties:

sound-name-prefix:
pattern: "^DSPK[1-9]$"
- $ref: /schemas/types.yaml#/definitions/string
- description:
- Used as prefix for sink/source names of the component. Must be a
- unique string among multiple instances of the same component.
- The name can be "DSPK1" or "DSPKx", where x depends on the maximum
- available instances on a Tegra SoC.

ports:
$ref: /schemas/graph.yaml#/properties/ports
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra210-dmic.yaml b/Documentation/devicetree/bindings/sound/nvidia,tegra210-dmic.yaml
index fd275a5..62db982 100644
--- a/Documentation/devicetree/bindings/sound/nvidia,tegra210-dmic.yaml
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra210-dmic.yaml
@@ -16,6 +16,9 @@ maintainers:
- Jon Hunter <[email protected]>
- Sameer Pujar <[email protected]>

+allOf:
+ - $ref: name-prefix.yaml#
+
properties:
$nodename:
pattern: "^dmic@[0-9a-f]*$"
@@ -49,12 +52,6 @@ properties:

sound-name-prefix:
pattern: "^DMIC[1-9]$"
- $ref: /schemas/types.yaml#/definitions/string
- description:
- used as prefix for sink/source names of the component. Must be a
- unique string among multiple instances of the same component.
- The name can be "DMIC1" or "DMIC2" ... "DMICx", where x depends
- on the maximum available instances on a Tegra SoC.

ports:
$ref: /schemas/graph.yaml#/properties/ports
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml b/Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml
index 6337070..f954be6 100644
--- a/Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml
@@ -16,6 +16,9 @@ maintainers:
- Jon Hunter <[email protected]>
- Sameer Pujar <[email protected]>

+allOf:
+ - $ref: name-prefix.yaml#
+
properties:
$nodename:
pattern: "^i2s@[0-9a-f]*$"
@@ -65,12 +68,6 @@ properties:

sound-name-prefix:
pattern: "^I2S[1-9]$"
- $ref: /schemas/types.yaml#/definitions/string
- description:
- Used as prefix for sink/source names of the component. Must be a
- unique string among multiple instances of the same component.
- The name can be "I2S1" or "I2S2" ... "I2Sx", where x depends
- on the maximum available instances on a Tegra SoC.

ports:
$ref: /schemas/graph.yaml#/properties/ports
diff --git a/Documentation/devicetree/bindings/sound/nxp,tfa989x.yaml b/Documentation/devicetree/bindings/sound/nxp,tfa989x.yaml
index ffb8fcf..68e5ad2 100644
--- a/Documentation/devicetree/bindings/sound/nxp,tfa989x.yaml
+++ b/Documentation/devicetree/bindings/sound/nxp,tfa989x.yaml
@@ -9,6 +9,9 @@ title: NXP/Goodix TFA989X (TFA1) Audio Amplifiers
maintainers:
- Stephan Gerhold <[email protected]>

+allOf:
+ - $ref: name-prefix.yaml#
+
properties:
compatible:
enum:
@@ -21,12 +24,6 @@ properties:
'#sound-dai-cells':
const: 0

- sound-name-prefix:
- $ref: /schemas/types.yaml#/definitions/string
- description:
- Used as prefix for sink/source names of the component. Must be a
- unique string among multiple instances of the same component.
-
vddd-supply:
description: regulator phandle for the VDDD power supply.

diff --git a/Documentation/devicetree/bindings/sound/rt5659.txt b/Documentation/devicetree/bindings/sound/rt5659.txt
index c473df5..013f534 100644
--- a/Documentation/devicetree/bindings/sound/rt5659.txt
+++ b/Documentation/devicetree/bindings/sound/rt5659.txt
@@ -42,7 +42,7 @@ Optional properties:
- realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin.
- realtek,reset-gpios : The GPIO that controls the CODEC's RESET pin.

-- sound-name-prefix: Please refer to name-prefix.txt
+- sound-name-prefix: Please refer to name-prefix.yaml

- ports: A Codec may have a single or multiple I2S interfaces. These
interfaces on Codec side can be described under 'ports' or 'port'.
diff --git a/Documentation/devicetree/bindings/sound/simple-audio-mux.yaml b/Documentation/devicetree/bindings/sound/simple-audio-mux.yaml
index 5986d1f..c597d9d 100644
--- a/Documentation/devicetree/bindings/sound/simple-audio-mux.yaml
+++ b/Documentation/devicetree/bindings/sound/simple-audio-mux.yaml
@@ -13,6 +13,9 @@ description: |
Simple audio multiplexers are driven using gpios, allowing to select which of
their input line is connected to the output line.

+allOf:
+ - $ref: name-prefix.yaml#
+
properties:
compatible:
const: simple-audio-mux
@@ -21,12 +24,6 @@ properties:
description: |
GPIOs used to select the input line.

- sound-name-prefix:
- $ref: /schemas/types.yaml#/definitions/string
- description:
- Used as prefix for sink/source names of the component. Must be a
- unique string among multiple instances of the same component.
-
required:
- compatible
- mux-gpios
--
2.7.4

2021-09-02 12:09:24

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 1/3] ASoC: Add json-schema documentation for sound-name-prefix

On Thu, 02 Sep 2021 11:23:51 +0530, Sameer Pujar wrote:
> The 'sound-name-prefix' is used to prepend suitable strings to a
> component widgets or controls. This is helpful when there are
> multiple instances of the same component. Add relevant json-schema
> and is inspired from sound-name-prefix.txt documentation.
>
> Signed-off-by: Sameer Pujar <[email protected]>
> Cc: Jerome Brunet <[email protected]>
> Cc: Rob Herring <[email protected]>
> ---
> .../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
> 1 file changed, 35 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.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:
Documentation/devicetree/bindings/sound/name-prefix.example.dts:19.28-22.11: Warning (unit_address_vs_reg): /example-0/analog-amplifier@0: node has a unit name, but no reg or ranges property
Documentation/devicetree/bindings/sound/name-prefix.example.dts:24.28-27.11: Warning (unit_address_vs_reg): /example-0/analog-amplifier@1: node has a unit name, but no reg or ranges property
Documentation/devicetree/bindings/sound/name-prefix.example.dt.yaml:0:0: /example-0/analog-amplifier@0: failed to match any schema with compatible: ['simple-audio-amplifier']
Documentation/devicetree/bindings/sound/name-prefix.example.dt.yaml:0:0: /example-0/analog-amplifier@1: failed to match any schema with compatible: ['simple-audio-amplifier']

doc reference errors (make refcheckdocs):

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

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.

2021-09-02 16:30:34

by Sameer Pujar

[permalink] [raw]
Subject: Re: [PATCH v2 1/3] ASoC: Add json-schema documentation for sound-name-prefix



On 9/2/2021 6:17 PM, Jerome Brunet wrote:
> External email: Use caution opening links or attachments
>
>
> On Thu 02 Sep 2021 at 11:23, Sameer Pujar <[email protected]> wrote:
>
>> The 'sound-name-prefix' is used to prepend suitable strings to a
>> component widgets or controls. This is helpful when there are
>> multiple instances of the same component. Add relevant json-schema
>> and is inspired from sound-name-prefix.txt documentation.
>>
>> Signed-off-by: Sameer Pujar <[email protected]>
>> Cc: Jerome Brunet <[email protected]>
>> Cc: Rob Herring <[email protected]>
>> ---
>> .../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
>> 1 file changed, 35 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/sound/name-prefix.yaml b/Documentation/devicetree/bindings/sound/name-prefix.yaml
>> new file mode 100644
>> index 00000000..b58cc9e
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/sound/name-prefix.yaml
>> @@ -0,0 +1,35 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/sound/name-prefix.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Component sound name prefix
>> +
>> +maintainers:
>> + - Jerome Brunet <[email protected]>
> Since this file is referenced using "AllOf", am I going to be listed as
> maintainer of all the drivers using the property below ? I'm not sure I
> want that ... :P
>
> Maybe it would be better to drop the above ?

The 'maintainers' seems to be a mandatory field. To address above may be
drop the top level reference and refer the property directly via a
definition if the earlier method [in v1] was not appropriate?


2021-09-02 19:29:09

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 1/3] ASoC: Add json-schema documentation for sound-name-prefix

On Thu, Sep 02, 2021 at 02:47:27PM +0200, Jerome Brunet wrote:
>
> On Thu 02 Sep 2021 at 11:23, Sameer Pujar <[email protected]> wrote:
>
> > The 'sound-name-prefix' is used to prepend suitable strings to a
> > component widgets or controls. This is helpful when there are
> > multiple instances of the same component. Add relevant json-schema
> > and is inspired from sound-name-prefix.txt documentation.
> >
> > Signed-off-by: Sameer Pujar <[email protected]>
> > Cc: Jerome Brunet <[email protected]>
> > Cc: Rob Herring <[email protected]>
> > ---
> > .../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
> > 1 file changed, 35 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/sound/name-prefix.yaml b/Documentation/devicetree/bindings/sound/name-prefix.yaml
> > new file mode 100644
> > index 00000000..b58cc9e
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/sound/name-prefix.yaml
> > @@ -0,0 +1,35 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/sound/name-prefix.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Component sound name prefix
> > +
> > +maintainers:
> > + - Jerome Brunet <[email protected]>
>
> Since this file is referenced using "AllOf", am I going to be listed as
> maintainer of all the drivers using the property below ? I'm not sure I
> want that ... :P

No. That's not how it works. You're maintainer of files that list you as
maintainer.

> Maybe it would be better to drop the above ?
>
> > +
> > +properties:
> > + sound-name-prefix:
> > + $ref: /schemas/types.yaml#/definitions/string
> > + description: |
> > + Card implementing the routing property define the connection between
> > + audio components as list of string pair. Component using the same
> > + sink/source names may use this property to prepend the name of their
> > + sinks/sources with the provided string.
> > +
> > +additionalProperties: true
> > +
> > +examples:
> > + - |
> > + analog-amplifier@0 {
> > + compatible = "simple-audio-amplifier";
> > + sound-name-prefix = "FRONT";
> > + };
> > +
> > + analog-amplifier@1 {
> > + compatible = "simple-audio-amplifier";
> > + sound-name-prefix = "BACK";
> > + };
> > +
> > +...
>
>

2021-09-02 19:59:40

by Jerome Brunet

[permalink] [raw]
Subject: Re: [PATCH v2 1/3] ASoC: Add json-schema documentation for sound-name-prefix


On Thu 02 Sep 2021 at 11:23, Sameer Pujar <[email protected]> wrote:

> The 'sound-name-prefix' is used to prepend suitable strings to a
> component widgets or controls. This is helpful when there are
> multiple instances of the same component. Add relevant json-schema
> and is inspired from sound-name-prefix.txt documentation.
>
> Signed-off-by: Sameer Pujar <[email protected]>
> Cc: Jerome Brunet <[email protected]>
> Cc: Rob Herring <[email protected]>
> ---
> .../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
> 1 file changed, 35 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml
>
> diff --git a/Documentation/devicetree/bindings/sound/name-prefix.yaml b/Documentation/devicetree/bindings/sound/name-prefix.yaml
> new file mode 100644
> index 00000000..b58cc9e
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/name-prefix.yaml
> @@ -0,0 +1,35 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/name-prefix.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Component sound name prefix
> +
> +maintainers:
> + - Jerome Brunet <[email protected]>

Since this file is referenced using "AllOf", am I going to be listed as
maintainer of all the drivers using the property below ? I'm not sure I
want that ... :P

Maybe it would be better to drop the above ?

> +
> +properties:
> + sound-name-prefix:
> + $ref: /schemas/types.yaml#/definitions/string
> + description: |
> + Card implementing the routing property define the connection between
> + audio components as list of string pair. Component using the same
> + sink/source names may use this property to prepend the name of their
> + sinks/sources with the provided string.
> +
> +additionalProperties: true
> +
> +examples:
> + - |
> + analog-amplifier@0 {
> + compatible = "simple-audio-amplifier";
> + sound-name-prefix = "FRONT";
> + };
> +
> + analog-amplifier@1 {
> + compatible = "simple-audio-amplifier";
> + sound-name-prefix = "BACK";
> + };
> +
> +...

2021-09-02 19:59:42

by Jerome Brunet

[permalink] [raw]
Subject: Re: [PATCH v2 0/3] Convert name-prefix doc to json-schema


On Thu 02 Sep 2021 at 11:23, Sameer Pujar <[email protected]> wrote:

> Following are the changes:
> - Add json-schema for 'sound-name-prefix' documentation under
> 'name-perfix.yaml'
> - Use schema references wherever needed.
> - Remove txt based doc
>
>
> Changelog
> =========
>
> v1 -> v2
> --------
> * Provide top reference to name-prefix.yaml as suggested by Rob
> for patch 2/3
> * Dropped couple of unreachable email ids from Cc list in commit
> message of patch 2/3
> * No changes in remaining patches
>
>
> Sameer Pujar (3):
> ASoC: Add json-schema documentation for sound-name-prefix
> ASoC: Use schema reference for sound-name-prefix
> ASoC: Remove name-prefix.txt

Thanks a lot for this Sameer.
With the small update required by Rob's bot and the comment on patch #1
taken care of, you may add:

Reviewed-by: Jerome Brunet <[email protected]>

>
> .../devicetree/bindings/sound/name-prefix.txt | 24 ---------------
> .../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
> .../bindings/sound/nvidia,tegra186-dspk.yaml | 9 ++----
> .../bindings/sound/nvidia,tegra210-dmic.yaml | 9 ++----
> .../bindings/sound/nvidia,tegra210-i2s.yaml | 9 ++----
> .../devicetree/bindings/sound/nxp,tfa989x.yaml | 9 ++----
> Documentation/devicetree/bindings/sound/rt5659.txt | 2 +-
> .../bindings/sound/simple-audio-mux.yaml | 9 ++----
> 8 files changed, 51 insertions(+), 55 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/sound/name-prefix.txt
> create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml

2021-09-03 00:44:27

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 1/3] ASoC: Add json-schema documentation for sound-name-prefix

On Thu, Sep 02, 2021 at 07:03:59AM -0500, Rob Herring wrote:
> On Thu, 02 Sep 2021 11:23:51 +0530, Sameer Pujar wrote:
> > The 'sound-name-prefix' is used to prepend suitable strings to a
> > component widgets or controls. This is helpful when there are
> > multiple instances of the same component. Add relevant json-schema
> > and is inspired from sound-name-prefix.txt documentation.
> >
> > Signed-off-by: Sameer Pujar <[email protected]>
> > Cc: Jerome Brunet <[email protected]>
> > Cc: Rob Herring <[email protected]>
> > ---
> > .../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
> > 1 file changed, 35 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.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:
> Documentation/devicetree/bindings/sound/name-prefix.example.dts:19.28-22.11: Warning (unit_address_vs_reg): /example-0/analog-amplifier@0: node has a unit name, but no reg or ranges property
> Documentation/devicetree/bindings/sound/name-prefix.example.dts:24.28-27.11: Warning (unit_address_vs_reg): /example-0/analog-amplifier@1: node has a unit name, but no reg or ranges property
> Documentation/devicetree/bindings/sound/name-prefix.example.dt.yaml:0:0: /example-0/analog-amplifier@0: failed to match any schema with compatible: ['simple-audio-amplifier']
> Documentation/devicetree/bindings/sound/name-prefix.example.dt.yaml:0:0: /example-0/analog-amplifier@1: failed to match any schema with compatible: ['simple-audio-amplifier']

I'd suggest you just drop the example. This schema is not a complete
binding.

Rob

2021-09-03 00:44:27

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 2/3] ASoC: Use schema reference for sound-name-prefix

On Thu, 02 Sep 2021 11:23:52 +0530, Sameer Pujar wrote:
> Use schema reference for 'sound-name-prefix' property wherever
> necessary.
>
> Signed-off-by: Sameer Pujar <[email protected]>
> Cc: Jerome Brunet <[email protected]>
> Cc: Stephan Gerhold <[email protected]>
> Cc: Rob Herring <[email protected]>
> ---
> .../devicetree/bindings/sound/nvidia,tegra186-dspk.yaml | 9 +++------
> .../devicetree/bindings/sound/nvidia,tegra210-dmic.yaml | 9 +++------
> Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml | 9 +++------
> Documentation/devicetree/bindings/sound/nxp,tfa989x.yaml | 9 +++------
> Documentation/devicetree/bindings/sound/rt5659.txt | 2 +-
> Documentation/devicetree/bindings/sound/simple-audio-mux.yaml | 9 +++------
> 6 files changed, 16 insertions(+), 31 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2021-09-03 11:38:43

by Jerome Brunet

[permalink] [raw]
Subject: Re: [PATCH v2 1/3] ASoC: Add json-schema documentation for sound-name-prefix


On Thu 02 Sep 2021 at 14:25, Rob Herring <[email protected]> wrote:

> On Thu, Sep 02, 2021 at 02:47:27PM +0200, Jerome Brunet wrote:
>>
>> On Thu 02 Sep 2021 at 11:23, Sameer Pujar <[email protected]> wrote:
>>
>> > The 'sound-name-prefix' is used to prepend suitable strings to a
>> > component widgets or controls. This is helpful when there are
>> > multiple instances of the same component. Add relevant json-schema
>> > and is inspired from sound-name-prefix.txt documentation.
>> >
>> > Signed-off-by: Sameer Pujar <[email protected]>
>> > Cc: Jerome Brunet <[email protected]>
>> > Cc: Rob Herring <[email protected]>
>> > ---
>> > .../devicetree/bindings/sound/name-prefix.yaml | 35 ++++++++++++++++++++++
>> > 1 file changed, 35 insertions(+)
>> > create mode 100644 Documentation/devicetree/bindings/sound/name-prefix.yaml
>> >
>> > diff --git a/Documentation/devicetree/bindings/sound/name-prefix.yaml b/Documentation/devicetree/bindings/sound/name-prefix.yaml
>> > new file mode 100644
>> > index 00000000..b58cc9e
>> > --- /dev/null
>> > +++ b/Documentation/devicetree/bindings/sound/name-prefix.yaml
>> > @@ -0,0 +1,35 @@
>> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> > +%YAML 1.2
>> > +---
>> > +$id: http://devicetree.org/schemas/sound/name-prefix.yaml#
>> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> > +
>> > +title: Component sound name prefix
>> > +
>> > +maintainers:
>> > + - Jerome Brunet <[email protected]>
>>
>> Since this file is referenced using "AllOf", am I going to be listed as
>> maintainer of all the drivers using the property below ? I'm not sure I
>> want that ... :P
>
> No. That's not how it works. You're maintainer of files that list you as
> maintainer.

Thanks for clarifying.
You can ignore my comment then Sameer.

>
>> Maybe it would be better to drop the above ?
>>
>> > +
>> > +properties:
>> > + sound-name-prefix:
>> > + $ref: /schemas/types.yaml#/definitions/string
>> > + description: |
>> > + Card implementing the routing property define the connection between
>> > + audio components as list of string pair. Component using the same
>> > + sink/source names may use this property to prepend the name of their
>> > + sinks/sources with the provided string.
>> > +
>> > +additionalProperties: true
>> > +
>> > +examples:
>> > + - |
>> > + analog-amplifier@0 {
>> > + compatible = "simple-audio-amplifier";
>> > + sound-name-prefix = "FRONT";
>> > + };
>> > +
>> > + analog-amplifier@1 {
>> > + compatible = "simple-audio-amplifier";
>> > + sound-name-prefix = "BACK";
>> > + };
>> > +
>> > +...
>>
>>