diff mbox series

[1/8] arm64: renesas: ulcb: use audio-graph-card

Message ID 87tvj19kyj.wl-kuninori.morimoto.gx@renesas.com (mailing list archive)
State Changes Requested
Delegated to: Simon Horman
Headers show
Series arm64: renesas: Sound update for ULCB/KF, etc | expand

Commit Message

Kuninori Morimoto Dec. 26, 2018, 12:53 a.m. UTC
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

ULCB can use daughter board which is called as KingFisher.
It has extra sound interface, thus we want to use it.
But, basically, ALSA SoC can't use Multiple sound card with single
CPU sound interface (= SSI). Thus we need to use Single Sound Card
with multiple DAI interface.

To be easy to expand ULCB sound card on KingFisher, it is better to
use multi-dai-link style sound card on ULCB sound DT.

Now, "simple-audio-card" / "audio-graph-card" both can support
multi-dai-link style, but HDMI sound support (which is not yet supported
on ULCB) needs "audio-graph-card".
Using audio-graph-card is better selection.
This patch exchange current sound card to use it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 arch/arm64/boot/dts/renesas/ulcb.dtsi | 39 ++++++++++++++++++++---------------
 1 file changed, 22 insertions(+), 17 deletions(-)

Comments

Simon Horman Jan. 2, 2019, 9:34 a.m. UTC | #1
On Wed, Dec 26, 2018 at 09:53:28AM +0900, Kuninori Morimoto wrote:
> 
> From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> 
> ULCB can use daughter board which is called as KingFisher.
> It has extra sound interface, thus we want to use it.
> But, basically, ALSA SoC can't use Multiple sound card with single
> CPU sound interface (= SSI). Thus we need to use Single Sound Card
> with multiple DAI interface.
> 
> To be easy to expand ULCB sound card on KingFisher, it is better to
> use multi-dai-link style sound card on ULCB sound DT.
> 
> Now, "simple-audio-card" / "audio-graph-card" both can support
> multi-dai-link style, but HDMI sound support (which is not yet supported
> on ULCB) needs "audio-graph-card".
> Using audio-graph-card is better selection.
> This patch exchange current sound card to use it.
> 
> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

Hi Morimoto-san,

I realise that I previously indicated that I was happy with this series,
but on closer inspection I have found a few minor problems.

1. The prefix of this and all other patches should be
   "arm64: dts: renesas: ". This I can fix when applying,
   but I also see:

2. When compiling with: make W=1 dtbs

  ...

  DTC     arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb-kf.dtb
arch/arm64/boot/dts/renesas/r8a7795-h3ulcb-kf.dtb: Warning (unit_address_vs_reg): /soc/sound@ec500000/ports/port@0: node has a unit name, but no reg property
arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb.dtb: Warning (unit_address_vs_reg): /soc/sound@ec500000/ports/port@0: node has a unit name, but no reg property
arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dtb: Warning (unit_address_vs_reg): /soc/sound@ec500000/ports/port@0: node has a unit name, but no reg property
arch/arm64/boot/dts/renesas/r8a7795-es1-h3ulcb-kf.dtb: Warning (unit_address_vs_reg): /soc/sound@ec500000/ports/port@0: node has a unit name, but no reg property

  ...

  Could you please see if this can be resolved?

  Locally I tried s/port@0/port/ which seems to help.

> ---
>  arch/arm64/boot/dts/renesas/ulcb.dtsi | 39 ++++++++++++++++++++---------------
>  1 file changed, 22 insertions(+), 17 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/renesas/ulcb.dtsi b/arch/arm64/boot/dts/renesas/ulcb.dtsi
> index f519d0c..209dda7 100644
> --- a/arch/arm64/boot/dts/renesas/ulcb.dtsi
> +++ b/arch/arm64/boot/dts/renesas/ulcb.dtsi
> @@ -83,20 +83,11 @@
>  		regulator-always-on;
>  	};
>  
> -	rsnd_ak4613: sound {
> -		compatible = "simple-audio-card";
> +	sound_card: sound {
> +		compatible = "audio-graph-card";
> +		label = "rcar-sound";
>  
> -		simple-audio-card,format = "left_j";
> -		simple-audio-card,bitclock-master = <&sndcpu>;
> -		simple-audio-card,frame-master = <&sndcpu>;
> -
> -		sndcpu: simple-audio-card,cpu {
> -			sound-dai = <&rcar_sound>;
> -		};
> -
> -		sndcodec: simple-audio-card,codec {
> -			sound-dai = <&ak4613>;
> -		};
> +		dais = <&rsnd_port0>;
>  	};
>  
>  	vcc_sdhi0: regulator-vcc-sdhi0 {
> @@ -211,6 +202,12 @@
>  		asahi-kasei,out4-single-end;
>  		asahi-kasei,out5-single-end;
>  		asahi-kasei,out6-single-end;
> +
> +		port {
> +			ak4613_endpoint: endpoint {
> +				remote-endpoint = <&rsnd_for_ak4613>;
> +			};
> +		};
>  	};
>  
>  	cs2000: clk-multiplier@4f {
> @@ -384,10 +381,18 @@
>  		 <&audio_clk_c>,
>  		 <&cpg CPG_CORE CPG_AUDIO_CLK_I>;
>  
> -	rcar_sound,dai {
> -		dai0 {
> -			playback = <&ssi0 &src0 &dvc0>;
> -			capture  = <&ssi1 &src1 &dvc1>;
> +	ports {
> +		rsnd_port0: port {
> +			rsnd_for_ak4613: endpoint {
> +				remote-endpoint = <&ak4613_endpoint>;
> +
> +				dai-format = "left_j";
> +				bitclock-master = <&rsnd_for_ak4613>;
> +				frame-master = <&rsnd_for_ak4613>;
> +
> +				playback = <&ssi0 &src0 &dvc0>;
> +				capture  = <&ssi1 &src1 &dvc1>;
> +			};
>  		};
>  	};
>  };
> -- 
> 2.7.4
>
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/renesas/ulcb.dtsi b/arch/arm64/boot/dts/renesas/ulcb.dtsi
index f519d0c..209dda7 100644
--- a/arch/arm64/boot/dts/renesas/ulcb.dtsi
+++ b/arch/arm64/boot/dts/renesas/ulcb.dtsi
@@ -83,20 +83,11 @@ 
 		regulator-always-on;
 	};
 
-	rsnd_ak4613: sound {
-		compatible = "simple-audio-card";
+	sound_card: sound {
+		compatible = "audio-graph-card";
+		label = "rcar-sound";
 
-		simple-audio-card,format = "left_j";
-		simple-audio-card,bitclock-master = <&sndcpu>;
-		simple-audio-card,frame-master = <&sndcpu>;
-
-		sndcpu: simple-audio-card,cpu {
-			sound-dai = <&rcar_sound>;
-		};
-
-		sndcodec: simple-audio-card,codec {
-			sound-dai = <&ak4613>;
-		};
+		dais = <&rsnd_port0>;
 	};
 
 	vcc_sdhi0: regulator-vcc-sdhi0 {
@@ -211,6 +202,12 @@ 
 		asahi-kasei,out4-single-end;
 		asahi-kasei,out5-single-end;
 		asahi-kasei,out6-single-end;
+
+		port {
+			ak4613_endpoint: endpoint {
+				remote-endpoint = <&rsnd_for_ak4613>;
+			};
+		};
 	};
 
 	cs2000: clk-multiplier@4f {
@@ -384,10 +381,18 @@ 
 		 <&audio_clk_c>,
 		 <&cpg CPG_CORE CPG_AUDIO_CLK_I>;
 
-	rcar_sound,dai {
-		dai0 {
-			playback = <&ssi0 &src0 &dvc0>;
-			capture  = <&ssi1 &src1 &dvc1>;
+	ports {
+		rsnd_port0: port@0 {
+			rsnd_for_ak4613: endpoint {
+				remote-endpoint = <&ak4613_endpoint>;
+
+				dai-format = "left_j";
+				bitclock-master = <&rsnd_for_ak4613>;
+				frame-master = <&rsnd_for_ak4613>;
+
+				playback = <&ssi0 &src0 &dvc0>;
+				capture  = <&ssi1 &src1 &dvc1>;
+			};
 		};
 	};
 };