* [PATCH] ASoC: dt-bindings: fsl,imx-audio-sgtl5000: Convert to dtschema
@ 2024-06-22 18:21 Animesh Agarwal
2024-06-23 7:08 ` Krzysztof Kozlowski
0 siblings, 1 reply; 3+ messages in thread
From: Animesh Agarwal @ 2024-06-22 18:21 UTC (permalink / raw)
Cc: animeshagarwal28, Daniel Baluta, Liam Girdwood, Mark Brown,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, linux-sound,
devicetree, imx, linux-arm-kernel, linux-kernel
Convert the imx-audio-sgtl bindings to DT schema. Make bindings complete
by adding audio-cpu property.
Signed-off-by: Animesh Agarwal <animeshagarwal28@gmail.com>
Cc: Daniel Baluta <daniel.baluta@nxp.com>
---
.../sound/fsl,imx-audio-sgtl5000.yaml | 108 ++++++++++++++++++
.../bindings/sound/imx-audio-sgtl5000.txt | 56 ---------
2 files changed, 108 insertions(+), 56 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
diff --git a/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml b/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
new file mode 100644
index 000000000000..906dcecb73b7
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
@@ -0,0 +1,108 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/fsl,imx-audio-sgtl5000.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Freescale i.MX audio complex with SGTL5000 codec
+
+maintainers:
+ - Animesh Agarwal <animeshagarwal28@gmail.com>
+
+properties:
+ compatible:
+ oneOf:
+ - items:
+ - enum:
+ - fsl,imx25-pdk-sgtl5000
+ - fsl,imx51-babbage-sgtl5000
+ - fsl,imx53-m53evk-sgtl5000
+ - tq,imx53-mba53-sgtl5000
+ - fsl,imx53-cpuvo-sgtl5000
+ - fsl,imx53-qsb-sgtl5000
+ - karo,tx53-audio-sgtl5000
+ - fsl,imx53-voipac-sgtl5000
+ - fsl,imx6q-ba16-sgtl5000
+ - fsl,imx6q-ventana-sgtl5000
+ - fsl,imx-sgtl5000
+ - fsl,imx6-armadeus-sgtl5000
+ - fsl,imx6dl-nit6xlite-sgtl5000
+ - fsl,imx6q-nitrogen6_max-sgtl5000
+ - fsl,imx6q-nitrogen6_som2-sgtl5000
+ - fsl,imx6q-nitrogen6x-sgtl5000
+ - fsl,imx6-rex-sgtl5000
+ - fsl,imx6q-sabrelite-sgtl5000
+ - fsl,imx6-wandboard-sgtl5000
+ - const: fsl,imx-audio-sgtl5000
+ - const: fsl,imx-audio-sgtl5000
+
+ model:
+ $ref: /schemas/types.yaml#/definitions/string
+ description: The user-visible name of this sound complex.
+
+ audio-cpu:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description: The phandle of an CPU DAI controller
+
+ ssi-controller:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description: The phandle of the i.MX SSI controller.
+
+ audio-codec:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description: The phandle of the SGTL5000 audio codec.
+
+ 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:
+ * Mic Bias
+
+ SGTL5000 pins:
+ * MIC_IN
+ * LINE_IN
+ * HP_OUT
+ * LINE_OUT
+
+ Board connectors:
+ * Mic Jack
+ * Line In Jack
+ * Headphone Jack
+ * Line Out Jack
+ * Ext Spk
+
+ mux-int-port:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: The internal port of the i.MX audio muxer (AUDMUX).
+ enum: [1, 2]
+
+ mux-ext-port:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: The external port of the i.MX audio muxer.
+ enum: [3, 4, 5, 6]
+
+required:
+ - compatible
+ - model
+
+additionalProperties: false
+
+examples:
+ - |
+ sound {
+ compatible = "fsl,imx51-babbage-sgtl5000",
+ "fsl,imx-audio-sgtl5000";
+ model = "imx51-babbage-sgtl5000";
+ ssi-controller = <&ssi1>;
+ audio-codec = <&sgtl5000>;
+ audio-routing =
+ "MIC_IN", "Mic Jack",
+ "Mic Jack", "Mic Bias",
+ "Headphone Jack", "HP_OUT";
+ mux-int-port = <1>;
+ mux-ext-port = <3>;
+ };
diff --git a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
deleted file mode 100644
index 2f89db88fd57..000000000000
--- a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
+++ /dev/null
@@ -1,56 +0,0 @@
-Freescale i.MX audio complex with SGTL5000 codec
-
-Required properties:
-
- - compatible : "fsl,imx-audio-sgtl5000"
-
- - model : The user-visible name of this sound complex
-
- - ssi-controller : The phandle of the i.MX SSI controller
-
- - audio-codec : The phandle of the SGTL5000 audio codec
-
- - audio-routing : 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, SGTL5000
- pins, and the jacks on the board:
-
- Power supplies:
- * Mic Bias
-
- SGTL5000 pins:
- * MIC_IN
- * LINE_IN
- * HP_OUT
- * LINE_OUT
-
- Board connectors:
- * Mic Jack
- * Line In Jack
- * Headphone Jack
- * Line Out Jack
- * Ext Spk
-
- - mux-int-port : The internal port of the i.MX audio muxer (AUDMUX)
-
- - mux-ext-port : The external port of the i.MX audio muxer
-
-Note: The AUDMUX port numbering should start at 1, which is consistent with
-hardware manual.
-
-Example:
-
-sound {
- compatible = "fsl,imx51-babbage-sgtl5000",
- "fsl,imx-audio-sgtl5000";
- model = "imx51-babbage-sgtl5000";
- ssi-controller = <&ssi1>;
- audio-codec = <&sgtl5000>;
- audio-routing =
- "MIC_IN", "Mic Jack",
- "Mic Jack", "Mic Bias",
- "Headphone Jack", "HP_OUT";
- mux-int-port = <1>;
- mux-ext-port = <3>;
-};
--
2.45.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] ASoC: dt-bindings: fsl,imx-audio-sgtl5000: Convert to dtschema
2024-06-22 18:21 [PATCH] ASoC: dt-bindings: fsl,imx-audio-sgtl5000: Convert to dtschema Animesh Agarwal
@ 2024-06-23 7:08 ` Krzysztof Kozlowski
2024-07-05 12:24 ` Daniel Baluta
0 siblings, 1 reply; 3+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-23 7:08 UTC (permalink / raw)
To: Animesh Agarwal
Cc: Daniel Baluta, Liam Girdwood, Mark Brown, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, linux-sound, devicetree,
imx, linux-arm-kernel, linux-kernel
On 22/06/2024 20:21, Animesh Agarwal wrote:
> Convert the imx-audio-sgtl bindings to DT schema. Make bindings complete
> by adding audio-cpu property.
On what basis? Who needs or uses audio-cpu? Driver? DTS? Both? If only
DTS, then is it needed? Maybe not?
>
> Signed-off-by: Animesh Agarwal <animeshagarwal28@gmail.com>
> Cc: Daniel Baluta <daniel.baluta@nxp.com>
> ---
> .../sound/fsl,imx-audio-sgtl5000.yaml | 108 ++++++++++++++++++
> .../bindings/sound/imx-audio-sgtl5000.txt | 56 ---------
> 2 files changed, 108 insertions(+), 56 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
> delete mode 100644 Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
>
> diff --git a/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml b/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
> new file mode 100644
> index 000000000000..906dcecb73b7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
> @@ -0,0 +1,108 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/fsl,imx-audio-sgtl5000.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Freescale i.MX audio complex with SGTL5000 codec
> +
> +maintainers:
> + - Animesh Agarwal <animeshagarwal28@gmail.com>
> +
> +properties:
> + compatible:
> + oneOf:
> + - items:
> + - enum:
> + - fsl,imx25-pdk-sgtl5000
> + - fsl,imx51-babbage-sgtl5000
> + - fsl,imx53-m53evk-sgtl5000
> + - tq,imx53-mba53-sgtl5000
> + - fsl,imx53-cpuvo-sgtl5000
> + - fsl,imx53-qsb-sgtl5000
> + - karo,tx53-audio-sgtl5000
Keep list ordered alphabetically.
> + - fsl,imx53-voipac-sgtl5000
> + - fsl,imx6q-ba16-sgtl5000
> + - fsl,imx6q-ventana-sgtl5000
> + - fsl,imx-sgtl5000
> + - fsl,imx6-armadeus-sgtl5000
> + - fsl,imx6dl-nit6xlite-sgtl5000
> + - fsl,imx6q-nitrogen6_max-sgtl5000
> + - fsl,imx6q-nitrogen6_som2-sgtl5000
> + - fsl,imx6q-nitrogen6x-sgtl5000
> + - fsl,imx6-rex-sgtl5000
> + - fsl,imx6q-sabrelite-sgtl5000
> + - fsl,imx6-wandboard-sgtl5000
None of these were in the old binding and commit msg mentions only
audio-cpu. From where do you get these?
> + - const: fsl,imx-audio-sgtl5000
> + - const: fsl,imx-audio-sgtl5000
> +
> + model:
> + $ref: /schemas/types.yaml#/definitions/string
> + description: The user-visible name of this sound complex.
> +
> + audio-cpu:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description: The phandle of an CPU DAI controller
> +
> + ssi-controller:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description: The phandle of the i.MX SSI controller.
> +
> + audio-codec:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description: The phandle of the SGTL5000 audio codec.
> +
> + 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:
> + * Mic Bias
> +
> + SGTL5000 pins:
> + * MIC_IN
> + * LINE_IN
> + * HP_OUT
> + * LINE_OUT
> +
> + Board connectors:
> + * Mic Jack
> + * Line In Jack
> + * Headphone Jack
> + * Line Out Jack
> + * Ext Spk
> +
> + mux-int-port:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: The internal port of the i.MX audio muxer (AUDMUX).
> + enum: [1, 2]
default:
> +
> + mux-ext-port:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: The external port of the i.MX audio muxer.
> + enum: [3, 4, 5, 6]
defaukt:
> +
> +required:
> + - compatible
> + - model
Several other properties were required. Why changing this? Please
explain in commit msg all changes done to the binding comparing to pure
conversion.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ASoC: dt-bindings: fsl,imx-audio-sgtl5000: Convert to dtschema
2024-06-23 7:08 ` Krzysztof Kozlowski
@ 2024-07-05 12:24 ` Daniel Baluta
0 siblings, 0 replies; 3+ messages in thread
From: Daniel Baluta @ 2024-07-05 12:24 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Animesh Agarwal, Daniel Baluta, Liam Girdwood, Mark Brown,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, linux-sound,
devicetree, imx, linux-arm-kernel, linux-kernel
On Sun, Jun 23, 2024 at 10:08 AM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On 22/06/2024 20:21, Animesh Agarwal wrote:
> > Convert the imx-audio-sgtl bindings to DT schema. Make bindings complete
> > by adding audio-cpu property.
>
> On what basis? Who needs or uses audio-cpu? Driver? DTS? Both? If only
> DTS, then is it needed? Maybe not?
>
> >
> > Signed-off-by: Animesh Agarwal <animeshagarwal28@gmail.com>
> > Cc: Daniel Baluta <daniel.baluta@nxp.com>
> > ---
> > .../sound/fsl,imx-audio-sgtl5000.yaml | 108 ++++++++++++++++++
> > .../bindings/sound/imx-audio-sgtl5000.txt | 56 ---------
> > 2 files changed, 108 insertions(+), 56 deletions(-)
> > create mode 100644 Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
> > delete mode 100644 Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
> >
> > diff --git a/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml b/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
> > new file mode 100644
> > index 000000000000..906dcecb73b7
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/sound/fsl,imx-audio-sgtl5000.yaml
> > @@ -0,0 +1,108 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/sound/fsl,imx-audio-sgtl5000.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Freescale i.MX audio complex with SGTL5000 codec
> > +
> > +maintainers:
> > + - Animesh Agarwal <animeshagarwal28@gmail.com>
> > +
> > +properties:
> > + compatible:
> > + oneOf:
> > + - items:
> > + - enum:
> > + - fsl,imx25-pdk-sgtl5000
> > + - fsl,imx51-babbage-sgtl5000
> > + - fsl,imx53-m53evk-sgtl5000
> > + - tq,imx53-mba53-sgtl5000
> > + - fsl,imx53-cpuvo-sgtl5000
> > + - fsl,imx53-qsb-sgtl5000
> > + - karo,tx53-audio-sgtl5000
>
> Keep list ordered alphabetically.
>
> > + - fsl,imx53-voipac-sgtl5000
> > + - fsl,imx6q-ba16-sgtl5000
> > + - fsl,imx6q-ventana-sgtl5000
> > + - fsl,imx-sgtl5000
> > + - fsl,imx6-armadeus-sgtl5000
> > + - fsl,imx6dl-nit6xlite-sgtl5000
> > + - fsl,imx6q-nitrogen6_max-sgtl5000
> > + - fsl,imx6q-nitrogen6_som2-sgtl5000
> > + - fsl,imx6q-nitrogen6x-sgtl5000
> > + - fsl,imx6-rex-sgtl5000
> > + - fsl,imx6q-sabrelite-sgtl5000
> > + - fsl,imx6-wandboard-sgtl5000
>
> None of these were in the old binding and commit msg mentions only
> audio-cpu. From where do you get these?
>
>
> > + - const: fsl,imx-audio-sgtl5000
> > + - const: fsl,imx-audio-sgtl5000
> > +
> > + model:
> > + $ref: /schemas/types.yaml#/definitions/string
> > + description: The user-visible name of this sound complex.
> > +
> > + audio-cpu:
> > + $ref: /schemas/types.yaml#/definitions/phandle
> > + description: The phandle of an CPU DAI controller
> > +
> > + ssi-controller:
> > + $ref: /schemas/types.yaml#/definitions/phandle
> > + description: The phandle of the i.MX SSI controller.
> > +
> > + audio-codec:
> > + $ref: /schemas/types.yaml#/definitions/phandle
> > + description: The phandle of the SGTL5000 audio codec.
> > +
> > + 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:
> > + * Mic Bias
> > +
> > + SGTL5000 pins:
> > + * MIC_IN
> > + * LINE_IN
> > + * HP_OUT
> > + * LINE_OUT
> > +
> > + Board connectors:
> > + * Mic Jack
> > + * Line In Jack
> > + * Headphone Jack
> > + * Line Out Jack
> > + * Ext Spk
> > +
> > + mux-int-port:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: The internal port of the i.MX audio muxer (AUDMUX).
> > + enum: [1, 2]
>
> default:
>
> > +
> > + mux-ext-port:
> > + $ref: /schemas/types.yaml#/definitions/uint32
> > + description: The external port of the i.MX audio muxer.
> > + enum: [3, 4, 5, 6]
>
> defaukt:
>
> > +
> > +required:
> > + - compatible
> > + - model
>
> Several other properties were required. Why changing this? Please
> explain in commit msg all changes done to the binding comparing to pure
> conversion.
I wonder how should we handle the case where 1 compatible string is
found in 2 drivers.
e.g
soc/fsl/fsl-asoc-card.c: { .compatible = "fsl,imx-audio-sgtl5000", },
soc/fsl/imx-sgtl5000.c: { .compatible = "fsl,imx-audio-sgtl5000", },
Take for example audio-cpu propertyssi-controller which was only added
in the newer soc/fsl/fsl-asoc-card.c driver. So this is required in
the new driver unless
the old binding "ssi-controller" is not present.
Given the fact that there are already 10 years since this commit:
commit 708b4351f08c08ea93f773fb9197bdd3f3b08273
Author: Nicolin Chen <nicoleotsuka@gmail.com>
Date: Wed Jul 30 19:27:38 2014 +0800
ASoC: fsl: Add Freescale Generic ASoC Sound Card with ASRC support
The driver is also compatible with the old Device Tree bindings of WM8962 and
SGTL5000. So we may consider to remove those two drivers after
this driver is
totally enabled. (It needs to be added into defconfig)
I think we should send a patch to remove soc/fsl/imx-sgtl5000.c
because I assume that by this point it's functionality
was fully implemented in soc/fsl/fsl-asoc-card.c
Thanks,
Daniel.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-07-05 12:24 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-22 18:21 [PATCH] ASoC: dt-bindings: fsl,imx-audio-sgtl5000: Convert to dtschema Animesh Agarwal
2024-06-23 7:08 ` Krzysztof Kozlowski
2024-07-05 12:24 ` Daniel Baluta
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).