All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] arm64: use Audio Graph Card2 on ULCB
@ 2021-11-16  8:26 Kuninori Morimoto
  2021-11-16  8:26 ` [PATCH 1/3] arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound Kuninori Morimoto
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Kuninori Morimoto @ 2021-11-16  8:26 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Magnus, linux-renesas-soc


Hi Geert

ALSA SoC has now new Audio Graph Card2 driver which can handle
sound card more flexible.
These patches enable and use it for ULCB board.

I'm thinking not update on other boards, because I want to know
both Card and Card2 behavior on upstream kernel.

Check "Audio Graph Card2" behavior on ULCB,
and   "Audio Graph Card"  behavior on other boards.

1 updates ULCB DT
2 updates defconfig
3 updates renesas_defconfig

Kuninori Morimoto (3):
  1) arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound
  2) arm64: defconfig: Enable Audio Graph Card2 driver
  3) arm64: renesas: defconfig: Enable Audio Graph Card2 driver

 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi | 22 ++++++++--------------
 arch/arm64/boot/dts/renesas/ulcb.dtsi    | 20 +++++++-------------
 arch/arm64/configs/defconfig             |  1 +
 arch/arm64/configs/renesas_defconfig     |  1 +
 4 files changed, 17 insertions(+), 27 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/3] arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound
  2021-11-16  8:26 [PATCH 0/3] arm64: use Audio Graph Card2 on ULCB Kuninori Morimoto
@ 2021-11-16  8:26 ` Kuninori Morimoto
  2021-11-23 11:42   ` Geert Uytterhoeven
  2021-11-16  8:26 ` [PATCH 2/3] arm64: defconfig: Enable Audio Graph Card2 driver Kuninori Morimoto
  2021-11-16  8:26 ` [PATCH 3/3] arm64: renesas: " Kuninori Morimoto
  2 siblings, 1 reply; 6+ messages in thread
From: Kuninori Morimoto @ 2021-11-16  8:26 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Magnus, linux-renesas-soc

From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

Current ULCB{-KF} are using audio-graph-card.
Now ALSA is supporting new audio-graph-card2 which can easily handle
more advanced feature. Let's switch to use it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 arch/arm64/boot/dts/renesas/ulcb-kf.dtsi | 22 ++++++++--------------
 arch/arm64/boot/dts/renesas/ulcb.dtsi    | 20 +++++++-------------
 2 files changed, 15 insertions(+), 27 deletions(-)

diff --git a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
index 61bd4df09df0..7266c02ee31d 100644
--- a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
+++ b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
@@ -302,12 +302,9 @@ rsnd_port2: port@2 {
 			reg = <2>;
 			rsnd_for_pcm3168a_play: endpoint {
 				remote-endpoint = <&pcm3168a_endpoint_p>;
-
-				dai-format = "i2s";
-				bitclock-master = <&rsnd_for_pcm3168a_play>;
-				frame-master = <&rsnd_for_pcm3168a_play>;
+				bitclock-master;
+				frame-master;
 				dai-tdm-slot-num = <8>;
-
 				playback = <&ssi3>;
 			};
 		};
@@ -315,12 +312,9 @@ rsnd_port3: port@3 {
 			reg = <3>;
 			rsnd_for_pcm3168a_capture: endpoint {
 				remote-endpoint = <&pcm3168a_endpoint_c>;
-
-				dai-format = "i2s";
-				bitclock-master = <&rsnd_for_pcm3168a_capture>;
-				frame-master = <&rsnd_for_pcm3168a_capture>;
+				bitclock-master;
+				frame-master;
 				dai-tdm-slot-num = <6>;
-
 				capture  = <&ssi4>;
 			};
 		};
@@ -360,10 +354,10 @@ wlcore: wlcore@2 {
 };
 
 &sound_card {
-	dais = <&rsnd_port0	/* ak4613 */
-		&rsnd_port1	/* HDMI0  */
-		&rsnd_port2	/* pcm3168a playback */
-		&rsnd_port3	/* pcm3168a capture  */
+	links = <&rsnd_port0	/* ak4613 */
+		 &rsnd_port1	/* HDMI0  */
+		 &rsnd_port2	/* pcm3168a playback */
+		 &rsnd_port3	/* pcm3168a capture  */
 		>;
 };
 
diff --git a/arch/arm64/boot/dts/renesas/ulcb.dtsi b/arch/arm64/boot/dts/renesas/ulcb.dtsi
index 7edffe7f8cfa..b4e69d212970 100644
--- a/arch/arm64/boot/dts/renesas/ulcb.dtsi
+++ b/arch/arm64/boot/dts/renesas/ulcb.dtsi
@@ -94,11 +94,11 @@ reg_3p3v: regulator1 {
 	};
 
 	sound_card: sound {
-		compatible = "audio-graph-card";
+		compatible = "audio-graph-card2";
 		label = "rcar-sound";
 
-		dais = <&rsnd_port0	/* ak4613 */
-			&rsnd_port1	/* HDMI0  */
+		links = <&rsnd_port0	/* ak4613 */
+			 &rsnd_port1	/* HDMI0  */
 			>;
 	};
 
@@ -411,11 +411,8 @@ rsnd_port0: port@0 {
 			reg = <0>;
 			rsnd_for_ak4613: endpoint {
 				remote-endpoint = <&ak4613_endpoint>;
-
-				dai-format = "left_j";
-				bitclock-master = <&rsnd_for_ak4613>;
-				frame-master = <&rsnd_for_ak4613>;
-
+				bitclock-master;
+				frame-master;
 				playback = <&ssi0>, <&src0>, <&dvc0>;
 				capture  = <&ssi1>, <&src1>, <&dvc1>;
 			};
@@ -424,11 +421,8 @@ rsnd_port1: port@1 {
 			reg = <1>;
 			rsnd_for_hdmi: endpoint {
 				remote-endpoint = <&dw_hdmi0_snd_in>;
-
-				dai-format = "i2s";
-				bitclock-master = <&rsnd_for_hdmi>;
-				frame-master = <&rsnd_for_hdmi>;
-
+				bitclock-master;
+				frame-master;
 				playback = <&ssi2>;
 			};
 		};
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/3] arm64: defconfig: Enable Audio Graph Card2 driver
  2021-11-16  8:26 [PATCH 0/3] arm64: use Audio Graph Card2 on ULCB Kuninori Morimoto
  2021-11-16  8:26 ` [PATCH 1/3] arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound Kuninori Morimoto
@ 2021-11-16  8:26 ` Kuninori Morimoto
  2021-11-16  8:26 ` [PATCH 3/3] arm64: renesas: " Kuninori Morimoto
  2 siblings, 0 replies; 6+ messages in thread
From: Kuninori Morimoto @ 2021-11-16  8:26 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Magnus, linux-renesas-soc


From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

commit 6e5f68fe3f2d35 ("ASoC: add Audio Graph Card2 driver")
added new Audio Graph Card2 driver which can handle
sound card more flexibly.
This patch enables it on defconfig.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 arch/arm64/configs/defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index f2e2b9bdd702..3bc3e1b6dd6a 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -802,6 +802,7 @@ CONFIG_SND_SOC_LPASS_WSA_MACRO=m
 CONFIG_SND_SOC_LPASS_VA_MACRO=m
 CONFIG_SND_SIMPLE_CARD=m
 CONFIG_SND_AUDIO_GRAPH_CARD=m
+CONFIG_SND_AUDIO_GRAPH_CARD2=m
 CONFIG_HID_MULTITOUCH=m
 CONFIG_I2C_HID_ACPI=m
 CONFIG_I2C_HID_OF=m
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/3] arm64: renesas: defconfig: Enable Audio Graph Card2 driver
  2021-11-16  8:26 [PATCH 0/3] arm64: use Audio Graph Card2 on ULCB Kuninori Morimoto
  2021-11-16  8:26 ` [PATCH 1/3] arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound Kuninori Morimoto
  2021-11-16  8:26 ` [PATCH 2/3] arm64: defconfig: Enable Audio Graph Card2 driver Kuninori Morimoto
@ 2021-11-16  8:26 ` Kuninori Morimoto
  2 siblings, 0 replies; 6+ messages in thread
From: Kuninori Morimoto @ 2021-11-16  8:26 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Magnus, linux-renesas-soc

From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

commit 6e5f68fe3f2d35 ("ASoC: add Audio Graph Card2 driver")
added new Audio Graph Card2 driver which can handle
sound card more flexibly.
This patch enables it on defconfig.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 arch/arm64/configs/renesas_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/configs/renesas_defconfig b/arch/arm64/configs/renesas_defconfig
index 01ea7ff02d5d..9df805f6f385 100644
--- a/arch/arm64/configs/renesas_defconfig
+++ b/arch/arm64/configs/renesas_defconfig
@@ -263,6 +263,7 @@ CONFIG_SND_SOC_PCM3168A_I2C=y
 CONFIG_SND_SOC_WM8978=y
 CONFIG_SND_SIMPLE_CARD=y
 CONFIG_SND_AUDIO_GRAPH_CARD=y
+CONFIG_SND_AUDIO_GRAPH_CARD2=y
 CONFIG_USB=y
 CONFIG_USB_OTG=y
 CONFIG_USB_XHCI_HCD=y
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/3] arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound
  2021-11-16  8:26 ` [PATCH 1/3] arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound Kuninori Morimoto
@ 2021-11-23 11:42   ` Geert Uytterhoeven
  2021-11-23 23:04     ` Kuninori Morimoto
  0 siblings, 1 reply; 6+ messages in thread
From: Geert Uytterhoeven @ 2021-11-23 11:42 UTC (permalink / raw)
  To: Kuninori Morimoto; +Cc: Magnus, Linux-Renesas

Hi Morimoto-san,

On Tue, Nov 16, 2021 at 9:26 AM Kuninori Morimoto
<kuninori.morimoto.gx@renesas.com> wrote:
> From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>
> Current ULCB{-KF} are using audio-graph-card.
> Now ALSA is supporting new audio-graph-card2 which can easily handle
> more advanced feature. Let's switch to use it.
>
> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

Thanks for your patch!

Unfortunately this introduces several errors from "make dtbs_check
DT_SCHEMA_FILES=Documentation/devicetree/bindings/sound/renesas,rsnd.yaml".
Probably the renesas,rand need to be amended first?

> --- a/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
> +++ b/arch/arm64/boot/dts/renesas/ulcb-kf.dtsi
> @@ -302,12 +302,9 @@ rsnd_port2: port@2 {
>                         reg = <2>;
>                         rsnd_for_pcm3168a_play: endpoint {
>                                 remote-endpoint = <&pcm3168a_endpoint_p>;
> -
> -                               dai-format = "i2s";
> -                               bitclock-master = <&rsnd_for_pcm3168a_play>;
> -                               frame-master = <&rsnd_for_pcm3168a_play>;
> +                               bitclock-master;
> +                               frame-master;

arch/arm64/boot/dts/renesas/r8a77951-ulcb-kf.dt.yaml: sound@ec500000:
ports:port@2: Unevaluated properties are not allowed ('reg',
'phandle', 'endpoint' were unexpected)
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
arch/arm64/boot/dts/renesas/r8a77951-ulcb-kf.dt.yaml: sound@ec500000:
ports:port@2:endpoint:frame-master: True is not of type 'array'
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
arch/arm64/boot/dts/renesas/r8a77951-ulcb-kf.dt.yaml: sound@ec500000:
ports:port@2:endpoint:bitclock-master: True is not of type 'array'
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml

>                                 dai-tdm-slot-num = <8>;
> -
>                                 playback = <&ssi3>;
>                         };
>                 };
> @@ -315,12 +312,9 @@ rsnd_port3: port@3 {
>                         reg = <3>;
>                         rsnd_for_pcm3168a_capture: endpoint {
>                                 remote-endpoint = <&pcm3168a_endpoint_c>;
> -
> -                               dai-format = "i2s";
> -                               bitclock-master = <&rsnd_for_pcm3168a_capture>;
> -                               frame-master = <&rsnd_for_pcm3168a_capture>;
> +                               bitclock-master;
> +                               frame-master;

arch/arm64/boot/dts/renesas/r8a77951-ulcb-kf.dt.yaml: sound@ec500000:
ports:port@3: Unevaluated properties are not allowed ('reg',
'phandle', 'endpoint' were unexpected)
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
arch/arm64/boot/dts/renesas/r8a77951-ulcb-kf.dt.yaml: sound@ec500000:
ports:port@3:endpoint:frame-master: True is not of type 'array'
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
arch/arm64/boot/dts/renesas/r8a77951-ulcb-kf.dt.yaml: sound@ec500000:
ports:port@3:endpoint:bitclock-master: True is not of type 'array'
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml

>                                 dai-tdm-slot-num = <6>;
> -
>                                 capture  = <&ssi4>;
>                         };
>                 };
> @@ -360,10 +354,10 @@ wlcore: wlcore@2 {
>  };
>
>  &sound_card {
> -       dais = <&rsnd_port0     /* ak4613 */
> -               &rsnd_port1     /* HDMI0  */
> -               &rsnd_port2     /* pcm3168a playback */
> -               &rsnd_port3     /* pcm3168a capture  */
> +       links = <&rsnd_port0    /* ak4613 */
> +                &rsnd_port1    /* HDMI0  */
> +                &rsnd_port2    /* pcm3168a playback */
> +                &rsnd_port3    /* pcm3168a capture  */
>                 >;
>  };
>
> diff --git a/arch/arm64/boot/dts/renesas/ulcb.dtsi b/arch/arm64/boot/dts/renesas/ulcb.dtsi
> index 7edffe7f8cfa..b4e69d212970 100644
> --- a/arch/arm64/boot/dts/renesas/ulcb.dtsi
> +++ b/arch/arm64/boot/dts/renesas/ulcb.dtsi
> @@ -94,11 +94,11 @@ reg_3p3v: regulator1 {
>         };
>
>         sound_card: sound {
> -               compatible = "audio-graph-card";
> +               compatible = "audio-graph-card2";
>                 label = "rcar-sound";
>
> -               dais = <&rsnd_port0     /* ak4613 */
> -                       &rsnd_port1     /* HDMI0  */
> +               links = <&rsnd_port0    /* ak4613 */
> +                        &rsnd_port1    /* HDMI0  */
>                         >;
>         };
>
> @@ -411,11 +411,8 @@ rsnd_port0: port@0 {
>                         reg = <0>;
>                         rsnd_for_ak4613: endpoint {
>                                 remote-endpoint = <&ak4613_endpoint>;
> -
> -                               dai-format = "left_j";
> -                               bitclock-master = <&rsnd_for_ak4613>;
> -                               frame-master = <&rsnd_for_ak4613>;
> -
> +                               bitclock-master;
> +                               frame-master;

arch/arm64/boot/dts/renesas/r8a77951-ulcb.dt.yaml: sound@ec500000:
ports:port@0: Unevaluated properties are not allowed ('reg',
'phandle', 'endpoint' were unexpected)
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
arch/arm64/boot/dts/renesas/r8a77951-ulcb.dt.yaml: sound@ec500000:
ports:port@0:endpoint:frame-master: True is not of type 'array'
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
arch/arm64/boot/dts/renesas/r8a77951-ulcb.dt.yaml: sound@ec500000:
ports:port@0:endpoint:bitclock-master: True is not of type 'array'
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml

>                                 playback = <&ssi0>, <&src0>, <&dvc0>;
>                                 capture  = <&ssi1>, <&src1>, <&dvc1>;
>                         };
> @@ -424,11 +421,8 @@ rsnd_port1: port@1 {
>                         reg = <1>;
>                         rsnd_for_hdmi: endpoint {
>                                 remote-endpoint = <&dw_hdmi0_snd_in>;
> -
> -                               dai-format = "i2s";
> -                               bitclock-master = <&rsnd_for_hdmi>;
> -                               frame-master = <&rsnd_for_hdmi>;
> -
> +                               bitclock-master;
> +                               frame-master;

arch/arm64/boot/dts/renesas/r8a77951-ulcb.dt.yaml: sound@ec500000:
ports:port@1: Unevaluated properties are not allowed ('reg',
'phandle', 'endpoint' were unexpected)
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
arch/arm64/boot/dts/renesas/r8a77951-ulcb.dt.yaml: sound@ec500000:
ports:port@1:endpoint:frame-master: True is not of type 'array'
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml
arch/arm64/boot/dts/renesas/r8a77951-ulcb.dt.yaml: sound@ec500000:
ports:port@1:endpoint:bitclock-master: True is not of type 'array'
        From schema: Documentation/devicetree/bindings/sound/renesas,rsnd.yaml

>                                 playback = <&ssi2>;
>                         };
>                 };

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/3] arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound
  2021-11-23 11:42   ` Geert Uytterhoeven
@ 2021-11-23 23:04     ` Kuninori Morimoto
  0 siblings, 0 replies; 6+ messages in thread
From: Kuninori Morimoto @ 2021-11-23 23:04 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Magnus, Linux-Renesas


Hi Geert

Thank you for your feedback

> > Current ULCB{-KF} are using audio-graph-card.
> > Now ALSA is supporting new audio-graph-card2 which can easily handle
> > more advanced feature. Let's switch to use it.
> >
> > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> 
> Thanks for your patch!
> 
> Unfortunately this introduces several errors from "make dtbs_check
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/sound/renesas,rsnd.yaml".
> Probably the renesas,rand need to be amended first?

Hmm ? strange.
Thanks, I will check and fix the issue.

Thank you for your help !!

Best regards
---
Kuninori Morimoto

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-11-23 23:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-16  8:26 [PATCH 0/3] arm64: use Audio Graph Card2 on ULCB Kuninori Morimoto
2021-11-16  8:26 ` [PATCH 1/3] arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound Kuninori Morimoto
2021-11-23 11:42   ` Geert Uytterhoeven
2021-11-23 23:04     ` Kuninori Morimoto
2021-11-16  8:26 ` [PATCH 2/3] arm64: defconfig: Enable Audio Graph Card2 driver Kuninori Morimoto
2021-11-16  8:26 ` [PATCH 3/3] arm64: renesas: " Kuninori Morimoto

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.