diff mbox series

[3/3] dt-bindings: dsp: fsl: Document newly introduced fsl,properties

Message ID 20210715141802.880911-4-daniel.baluta@oss.nxp.com
State New
Headers show
Series Read firmware, tplg and machine driver name from dts node | expand

Commit Message

Daniel Baluta July 15, 2021, 2:18 p.m. UTC
From: Daniel Baluta <daniel.baluta@nxp.com>


Document firmware-name, tplg-name and machine-drv-name properties.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>

---
 .../devicetree/bindings/dsp/fsl,dsp.yaml      | 20 +++++++++++++++++++
 1 file changed, 20 insertions(+)

-- 
2.27.0

Comments

Rob Herring July 15, 2021, 2:59 p.m. UTC | #1
On Thu, Jul 15, 2021 at 8:18 AM Daniel Baluta <daniel.baluta@oss.nxp.com> wrote:
>

> From: Daniel Baluta <daniel.baluta@nxp.com>

>

> Document firmware-name, tplg-name and machine-drv-name properties.


That's obvious from the diff.

Why do you need these?

>

> Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>

> ---

>  .../devicetree/bindings/dsp/fsl,dsp.yaml      | 20 +++++++++++++++++++

>  1 file changed, 20 insertions(+)

>

> diff --git a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml

> index 7afc9f2be13a..8095aa178e7c 100644

> --- a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml

> +++ b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml

> @@ -60,6 +60,22 @@ properties:

>        used by DSP (see bindings/reserved-memory/reserved-memory.txt)

>      maxItems: 1

>

> +  firmware-name:

> +    $ref: /schemas/types.yaml#/definitions/string

> +    description:

> +      If present, name of the file within the firmware search path containing

> +      the DSP firmware loaded by SOF at DSP boot time.

> +

> +  tplg-name:

> +    $ref: /schemas/types.yaml#/definitions/string

> +    description:

> +      Should contain the audio topology file name loaded by SOF driver.


Is this some format the DSP requires? Why do we need a separate file?
This is defined by the board or user config?

> +

> +  machine-drv-name:

> +    $ref: /schemas/types.yaml#/definitions/string

> +    description:

> +      Contains the ASoC machine driver name used by SOF to handle DSP audio scenario.


Umm, no.

> +

>  required:

>    - compatible

>    - reg

> @@ -69,6 +85,8 @@ required:

>    - mboxes

>    - mbox-names

>    - memory-region

> +  - tplg-name

> +  - machine-drv-name

>

>  additionalProperties: false

>

> @@ -90,4 +108,6 @@ examples:

>          mbox-names = "txdb0", "txdb1", "rxdb0", "rxdb1";

>          mboxes = <&lsio_mu13 2 0>, <&lsio_mu13 2 1>, <&lsio_mu13 3 0>, <&lsio_mu13 3 1>;

>          memory-region = <&dsp_reserved>;

> +        tplg-name = "sof-imx8-wm8960.tplg";

> +        machine-drv-name = "asoc-simple-card";

>      };

> --

> 2.27.0

>
Rob Herring (Arm) July 15, 2021, 3:51 p.m. UTC | #2
On Thu, 15 Jul 2021 17:18:02 +0300, Daniel Baluta wrote:
> From: Daniel Baluta <daniel.baluta@nxp.com>

> 

> Document firmware-name, tplg-name and machine-drv-name properties.

> 

> Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>

> ---

>  .../devicetree/bindings/dsp/fsl,dsp.yaml      | 20 +++++++++++++++++++

>  1 file changed, 20 insertions(+)

> 


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/linux-dt-review/Documentation/devicetree/bindings/mailbox/arm,mhuv2.example.dt.yaml: dsp@596e8000: 'tplg-name' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/mailbox/arm,mhuv2.example.dt.yaml: dsp@596e8000: 'machine-drv-name' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
\ndoc reference errors (make refcheckdocs):

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

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.
Daniel Baluta July 16, 2021, 2:25 p.m. UTC | #3
On Thu, Jul 15, 2021 at 5:59 PM Rob Herring <robh+dt@kernel.org> wrote:
>

> On Thu, Jul 15, 2021 at 8:18 AM Daniel Baluta <daniel.baluta@oss.nxp.com> wrote:

> >

> > From: Daniel Baluta <daniel.baluta@nxp.com>

> >

> > Document firmware-name, tplg-name and machine-drv-name properties.

>

> That's obvious from the diff.

>

> Why do you need these?

>

> >

> > Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>

> > ---

> >  .../devicetree/bindings/dsp/fsl,dsp.yaml      | 20 +++++++++++++++++++

> >  1 file changed, 20 insertions(+)

> >

> > diff --git a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml

> > index 7afc9f2be13a..8095aa178e7c 100644

> > --- a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml

> > +++ b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml

> > @@ -60,6 +60,22 @@ properties:

> >        used by DSP (see bindings/reserved-memory/reserved-memory.txt)

> >      maxItems: 1

> >

> > +  firmware-name:

> > +    $ref: /schemas/types.yaml#/definitions/string

> > +    description:

> > +      If present, name of the file within the firmware search path containing

> > +      the DSP firmware loaded by SOF at DSP boot time.

> > +

> > +  tplg-name:

> > +    $ref: /schemas/types.yaml#/definitions/string

> > +    description:

> > +      Should contain the audio topology file name loaded by SOF driver.

>

> Is this some format the DSP requires? Why do we need a separate file?

> This is defined by the board or user config?


This is not specific to DSP but to ALSA (See ALSA topology [1]).

We need the .tplg file in order to describe the support Audio scenario
by our board.

This could be defined both by:

board:
- e.g our CPU board can have a baseboard attached (so the audio
scenario changes).
user config:
- e.g user wants to enable post processing or any audio component.

I couldnt find a good way to specify this except via DTS. Intel folks
derive this information from ACPI tables.

[1] https://www.alsa-project.org/wiki/ALSA_topology
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
index 7afc9f2be13a..8095aa178e7c 100644
--- a/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
+++ b/Documentation/devicetree/bindings/dsp/fsl,dsp.yaml
@@ -60,6 +60,22 @@  properties:
       used by DSP (see bindings/reserved-memory/reserved-memory.txt)
     maxItems: 1
 
+  firmware-name:
+    $ref: /schemas/types.yaml#/definitions/string
+    description:
+      If present, name of the file within the firmware search path containing
+      the DSP firmware loaded by SOF at DSP boot time.
+
+  tplg-name:
+    $ref: /schemas/types.yaml#/definitions/string
+    description:
+      Should contain the audio topology file name loaded by SOF driver.
+
+  machine-drv-name:
+    $ref: /schemas/types.yaml#/definitions/string
+    description:
+      Contains the ASoC machine driver name used by SOF to handle DSP audio scenario.
+
 required:
   - compatible
   - reg
@@ -69,6 +85,8 @@  required:
   - mboxes
   - mbox-names
   - memory-region
+  - tplg-name
+  - machine-drv-name
 
 additionalProperties: false
 
@@ -90,4 +108,6 @@  examples:
         mbox-names = "txdb0", "txdb1", "rxdb0", "rxdb1";
         mboxes = <&lsio_mu13 2 0>, <&lsio_mu13 2 1>, <&lsio_mu13 3 0>, <&lsio_mu13 3 1>;
         memory-region = <&dsp_reserved>;
+        tplg-name = "sof-imx8-wm8960.tplg";
+        machine-drv-name = "asoc-simple-card";
     };