Message ID | 1620630441-14358-2-git-send-email-shengjiu.wang@nxp.com |
---|---|
State | New |
Headers | show |
Series | [v2,1/2] ASoC: imx-akcodec: Add imx-akcodec machine driver | expand |
On Mon, May 10, 2021 at 03:07:21PM +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> > --- > changes in v2: > - update doc accoring to Rob's comment, use the common porperties. > > .../bindings/sound/imx-audio-akcodec.yaml | 107 ++++++++++++++++++ > 1 file changed, 107 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..0812c4779b59 > --- /dev/null > +++ b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml > @@ -0,0 +1,107 @@ > +# 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-akcodec > + - fsl,imx-audio-akcodec We gone from individual codecs to a family of codecs. Is there something specific for the machine driver about this set of codecs? Why can't it be *any* codec? > + > + model: > + $ref: /schemas/types.yaml#/definitions/string > + description: User specified audio sound card name > + > + audio-routing: > + $ref: /schemas/types.yaml#/definitions/non-unique-string-array > + description: > + A list of the connections between audio components. Each entry is a > + pair of strings, the first being the connection's sink, the second > + being the connection's source. Valid names could be power supplies, > + MicBias of codec and the jacks on the board. > + > +patternProperties: > + ".*-dai-link$": > + description: > + Each subnode represents a dai link. Subnodes of each dai links would be > + cpu/codec dais. > + > + type: object > + > + properties: > + link-name: > + description: Indicates dai-link name and PCM stream name. > + $ref: /schemas/types.yaml#/definitions/string > + maxItems: 1 > + > + format: > + description: audio format. > + items: > + enum: > + - i2s > + - dsp_b > + > + cpu: > + description: Holds subnode which indicates cpu dai. > + type: object > + properties: > + sound-dai: true > + > + codec: > + description: Holds subnode which indicates codec dai. > + type: object > + properties: > + sound-dai: true > + > + required: > + - link-name > + - cpu > + > + additionalProperties: false > + > +required: > + - compatible > + - model > + > +additionalProperties: false > + > +examples: > + - | > + sound-ak4458 { > + compatible = "fsl,imx-audio-akcodec"; > + model = "ak4458-audio"; > + pri-dai-link { > + link-name = "akcodec"; > + format = "i2s"; > + cpu { > + sound-dai = <&sai1>; > + }; > + codec { > + sound-dai = <&ak4458_1>, <&ak4458_2>; > + }; > + }; > + fe-dai-link { > + link-name = "HiFi-ASRC-FE"; > + format = "i2s"; > + cpu { > + sound-dai = <&easrc>; > + }; > + }; > + be-dai-link { > + link-name = "HiFi-ASRC-BE"; > + format = "dsp_b"; > + cpu { > + sound-dai = <&sai1>; > + }; > + codec { > + sound-dai = <&ak4458_1>, <&ak4458_2>; > + }; > + }; > + }; > -- > 2.27.0 >
On Thu, May 13, 2021 at 4:07 AM Rob Herring <robh@kernel.org> wrote: > > On Mon, May 10, 2021 at 03:07:21PM +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> > > --- > > changes in v2: > > - update doc accoring to Rob's comment, use the common porperties. > > > > .../bindings/sound/imx-audio-akcodec.yaml | 107 ++++++++++++++++++ > > 1 file changed, 107 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..0812c4779b59 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml > > @@ -0,0 +1,107 @@ > > +# 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-akcodec > > + - fsl,imx-audio-akcodec > > We gone from individual codecs to a family of codecs. Is there something > specific for the machine driver about this set of codecs? Why can't it > be *any* codec? Yes, there is something specific. but let me do further updates for this in the next version, then the document name needs to be changed to "imx-audio-card". best regards wang shengjiu
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..0812c4779b59 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml @@ -0,0 +1,107 @@ +# 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-akcodec + - fsl,imx-audio-akcodec + + model: + $ref: /schemas/types.yaml#/definitions/string + description: User specified audio sound card name + + audio-routing: + $ref: /schemas/types.yaml#/definitions/non-unique-string-array + description: + A list of the connections between audio components. Each entry is a + pair of strings, the first being the connection's sink, the second + being the connection's source. Valid names could be power supplies, + MicBias of codec and the jacks on the board. + +patternProperties: + ".*-dai-link$": + description: + Each subnode represents a dai link. Subnodes of each dai links would be + cpu/codec dais. + + type: object + + properties: + link-name: + description: Indicates dai-link name and PCM stream name. + $ref: /schemas/types.yaml#/definitions/string + maxItems: 1 + + format: + description: audio format. + items: + enum: + - i2s + - dsp_b + + cpu: + description: Holds subnode which indicates cpu dai. + type: object + properties: + sound-dai: true + + codec: + description: Holds subnode which indicates codec dai. + type: object + properties: + sound-dai: true + + required: + - link-name + - cpu + + additionalProperties: false + +required: + - compatible + - model + +additionalProperties: false + +examples: + - | + sound-ak4458 { + compatible = "fsl,imx-audio-akcodec"; + model = "ak4458-audio"; + pri-dai-link { + link-name = "akcodec"; + format = "i2s"; + cpu { + sound-dai = <&sai1>; + }; + codec { + sound-dai = <&ak4458_1>, <&ak4458_2>; + }; + }; + fe-dai-link { + link-name = "HiFi-ASRC-FE"; + format = "i2s"; + cpu { + sound-dai = <&easrc>; + }; + }; + be-dai-link { + link-name = "HiFi-ASRC-BE"; + format = "dsp_b"; + cpu { + sound-dai = <&sai1>; + }; + codec { + sound-dai = <&ak4458_1>, <&ak4458_2>; + }; + }; + };
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> --- changes in v2: - update doc accoring to Rob's comment, use the common porperties. .../bindings/sound/imx-audio-akcodec.yaml | 107 ++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/imx-audio-akcodec.yaml