diff mbox series

[2/2] ASoC: dt-bindings: imx-akcodec: Add binding doc for akcodec machine driver

Message ID 1619157107-3734-2-git-send-email-shengjiu.wang@nxp.com
State New
Headers show
Series [1/2] ASoC: imx-akcodec: Add imx-akcodec machine driver | expand

Commit Message

Shengjiu Wang April 23, 2021, 5:51 a.m. UTC
Imx-akcodec is a new added machine driver for supporting
ak4458/ak5558/ak5552/ak4497 codec on i.MX platforms.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>

---
 .../bindings/sound/imx-audio-akcodec.yaml     | 60 +++++++++++++++++++
 1 file changed, 60 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml

-- 
2.17.1

Comments

Rob Herring May 3, 2021, 5 p.m. UTC | #1
On Fri, Apr 23, 2021 at 01:51:47PM +0800, Shengjiu Wang wrote:
> Imx-akcodec is a new added machine driver for supporting

> ak4458/ak5558/ak5552/ak4497 codec on i.MX platforms.

> 

> Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>

> ---

>  .../bindings/sound/imx-audio-akcodec.yaml     | 60 +++++++++++++++++++

>  1 file changed, 60 insertions(+)

>  create mode 100644 Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml

> 

> diff --git a/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml

> new file mode 100644

> index 000000000000..7419bf7224e9

> --- /dev/null

> +++ b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml

> @@ -0,0 +1,60 @@

> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)

> +%YAML 1.2

> +---

> +$id: http://devicetree.org/schemas/sound/imx-audio-akcodec.yaml#

> +$schema: http://devicetree.org/meta-schemas/core.yaml#

> +

> +title: NXP i.MX audio complex with AK4458/AK5558/AK5552/AK4497 codec


Looks like the existing fsl-asoc-card.txt? You should convert to schema 
and use that. Otherwise, my comments are based on this all being 'new'.

> +

> +maintainers:

> +  - Shengjiu Wang <shengjiu.wang@nxp.com>

> +

> +properties:

> +  compatible:

> +    enum:

> +      - fsl,imx8mq-audio-ak4458

> +      - fsl,imx8mq-audio-ak4497

> +      - fsl,imx8mq-audio-ak5558

> +      - fsl,imx-audio-ak4497

> +      - fsl,imx-audio-ak4458

> +      - fsl,imx-audio-ak5558

> +      - fsl,imx-audio-ak5552


I continue to not understand why audio bindings need the codec(s) in the 
compatible strings. Can't you look up the codec thru the audio-codec 
property?

> +

> +  model:

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

> +    description: User specified audio sound card name

> +

> +  audio-cpu:

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

> +    description: The phandle of a CPU DAI controller

> +

> +  audio-codec:

> +    description: The phandle of Codec DAI controllers, there are two

> +                 controllers maximum.


We have the common 'sound-dai' property. See the simple-card.yaml 
binding. 

> +

> +  audio-asrc:

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

> +    description: The phandle of ASRC. It can be absent if there's no

> +                 need to add ASRC support via DPCM.


Needs a vendor prefix.

> +

> +  fsl,tdm:

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

> +    description: |

> +      This is a boolean property. If present, the TDM mode is enabled.


But this one seems like something that could or should be common.

> +

> +required:

> +  - compatible

> +  - model

> +  - audio-cpu

> +  - audio-codec

> +

> +additionalProperties: false

> +

> +examples:

> +  - |

> +    sound-ak4458 {

> +        compatible = "fsl,imx-audio-ak4458";

> +        model = "ak4458-audio";

> +        audio-cpu = <&sai1>;

> +        audio-codec = <&ak4458_1>, <&ak4458_2>;

> +    };

> -- 

> 2.17.1

>
Shengjiu Wang May 8, 2021, 11:14 a.m. UTC | #2
Hi

On Tue, May 4, 2021 at 1:01 AM Rob Herring <robh@kernel.org> wrote:
>

> On Fri, Apr 23, 2021 at 01:51:47PM +0800, Shengjiu Wang wrote:

> > Imx-akcodec is a new added machine driver for supporting

> > ak4458/ak5558/ak5552/ak4497 codec on i.MX platforms.

> >

> > Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>

> > ---

> >  .../bindings/sound/imx-audio-akcodec.yaml     | 60 +++++++++++++++++++

> >  1 file changed, 60 insertions(+)

> >  create mode 100644 Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml

> >

> > diff --git a/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml

> > new file mode 100644

> > index 000000000000..7419bf7224e9

> > --- /dev/null

> > +++ b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml

> > @@ -0,0 +1,60 @@

> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)

> > +%YAML 1.2

> > +---

> > +$id: http://devicetree.org/schemas/sound/imx-audio-akcodec.yaml#

> > +$schema: http://devicetree.org/meta-schemas/core.yaml#

> > +

> > +title: NXP i.MX audio complex with AK4458/AK5558/AK5552/AK4497 codec

>

> Looks like the existing fsl-asoc-card.txt? You should convert to schema

> and use that. Otherwise, my comments are based on this all being 'new'.


Ok, let's treat it as 'new'

>

> > +

> > +maintainers:

> > +  - Shengjiu Wang <shengjiu.wang@nxp.com>

> > +

> > +properties:

> > +  compatible:

> > +    enum:

> > +      - fsl,imx8mq-audio-ak4458

> > +      - fsl,imx8mq-audio-ak4497

> > +      - fsl,imx8mq-audio-ak5558

> > +      - fsl,imx-audio-ak4497

> > +      - fsl,imx-audio-ak4458

> > +      - fsl,imx-audio-ak5558

> > +      - fsl,imx-audio-ak5552

>

> I continue to not understand why audio bindings need the codec(s) in the

> compatible strings. Can't you look up the codec thru the audio-codec

> property?


I will try to remove the codecs type from the compatible string and check
the codec type in driver.

>

> > +

> > +  model:

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

> > +    description: User specified audio sound card name

> > +

> > +  audio-cpu:

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

> > +    description: The phandle of a CPU DAI controller

> > +

> > +  audio-codec:

> > +    description: The phandle of Codec DAI controllers, there are two

> > +                 controllers maximum.

>

> We have the common 'sound-dai' property. See the simple-card.yaml

> binding.


ok, will use sound-dai.

>

> > +

> > +  audio-asrc:

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

> > +    description: The phandle of ASRC. It can be absent if there's no

> > +                 need to add ASRC support via DPCM.

>

> Needs a vendor prefix.


ok,  can be removed in the next version.

>

> > +

> > +  fsl,tdm:

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

> > +    description: |

> > +      This is a boolean property. If present, the TDM mode is enabled.

>

> But this one seems like something that could or should be common.


Ok, I will use the common one in the next version.

>

> > +

> > +required:

> > +  - compatible

> > +  - model

> > +  - audio-cpu

> > +  - audio-codec

> > +

> > +additionalProperties: false

> > +

> > +examples:

> > +  - |

> > +    sound-ak4458 {

> > +        compatible = "fsl,imx-audio-ak4458";

> > +        model = "ak4458-audio";

> > +        audio-cpu = <&sai1>;

> > +        audio-codec = <&ak4458_1>, <&ak4458_2>;

> > +    };

> > --

> > 2.17.1

> >
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml
new file mode 100644
index 000000000000..7419bf7224e9
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml
@@ -0,0 +1,60 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/imx-audio-akcodec.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NXP i.MX audio complex with AK4458/AK5558/AK5552/AK4497 codec
+
+maintainers:
+  - Shengjiu Wang <shengjiu.wang@nxp.com>
+
+properties:
+  compatible:
+    enum:
+      - fsl,imx8mq-audio-ak4458
+      - fsl,imx8mq-audio-ak4497
+      - fsl,imx8mq-audio-ak5558
+      - fsl,imx-audio-ak4497
+      - fsl,imx-audio-ak4458
+      - fsl,imx-audio-ak5558
+      - fsl,imx-audio-ak5552
+
+  model:
+    $ref: /schemas/types.yaml#/definitions/string
+    description: User specified audio sound card name
+
+  audio-cpu:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: The phandle of a CPU DAI controller
+
+  audio-codec:
+    description: The phandle of Codec DAI controllers, there are two
+                 controllers maximum.
+
+  audio-asrc:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: The phandle of ASRC. It can be absent if there's no
+                 need to add ASRC support via DPCM.
+
+  fsl,tdm:
+    $ref: /schemas/types.yaml#/definitions/flag
+    description: |
+      This is a boolean property. If present, the TDM mode is enabled.
+
+required:
+  - compatible
+  - model
+  - audio-cpu
+  - audio-codec
+
+additionalProperties: false
+
+examples:
+  - |
+    sound-ak4458 {
+        compatible = "fsl,imx-audio-ak4458";
+        model = "ak4458-audio";
+        audio-cpu = <&sai1>;
+        audio-codec = <&ak4458_1>, <&ak4458_2>;
+    };