diff --git a/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts b/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
index d2110f529f61..6768ee16375c 100644
--- a/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
+++ b/arch/arm64/boot/dts/renesas/r8a77990-ebisu.dts
@@ -244,21 +244,28 @@
 		regulator-always-on;
 	};
 
-	rsnd_ak4613: sound {
-		compatible = "simple-audio-card";
-
-		simple-audio-card,name = "rsnd-ak4613";
-		simple-audio-card,format = "left_j";
-		simple-audio-card,bitclock-master = <&sndcpu>;
-		simple-audio-card,frame-master = <&sndcpu>;
-
-		sndcodec: simple-audio-card,codec {
-			sound-dai = <&ak4613>;
-		};
-
-		sndcpu: simple-audio-card,cpu {
-			sound-dai = <&rcar_sound>;
-		};
+	sound_card: sound {
+		compatible = "audio-graph-scu-card";
+
+		label = "rcar-sound";
+
+		prefix = "ak4613";
+		routing = "ak4613 Playback", "Playback0",
+				"ak4613 Playback", "Playback1",
+				"ak4613 Playback", "Playback2",
+				"ak4613 Playback", "Playback3",
+				"Capture0", "ak4613 Capture",
+				"Capture1", "ak4613 Capture",
+				"Capture2", "ak4613 Capture",
+				"Capture3", "ak4613 Capture",
+				"ak4613 Playback", "DAI0 Playback",
+				"DAI0 Capture", "ak4613 Capture";
+
+		dais = <&adsp_port0
+			&adsp_port1
+			&adsp_port2
+			&adsp_port3
+			&rsnd_port0>;
 	};
 
 	vbus0_usb2: regulator-vbus0-usb2 {
@@ -561,6 +568,31 @@
 		asahi-kasei,out4-single-end;
 		asahi-kasei,out5-single-end;
 		asahi-kasei,out6-single-end;
+
+		port {
+			#address-cells = <1>;
+			#size-cells = <0>;
+			ak4613_endpoint0: endpoint@0 {
+				reg = <0>;
+				remote-endpoint = <&adsp_endpoint0>;
+			};
+			ak4613_endpoint1: endpoint@1 {
+				reg = <1>;
+				remote-endpoint = <&adsp_endpoint1>;
+			};
+			ak4613_endpoint2: endpoint@2 {
+				reg = <2>;
+				remote-endpoint = <&adsp_endpoint2>;
+			};
+			ak4613_endpoint3: endpoint@3 {
+				reg = <3>;
+				remote-endpoint = <&adsp_endpoint3>;
+			};
+			ak4613_endpoint4: endpoint@4 {
+				reg = <4>;
+				remote-endpoint = <&rsnd_endpoint0>;
+			};
+		};
 	};
 
 	cs2000: clk-multiplier@4f {
@@ -749,6 +781,45 @@
 	status = "okay";
 };
 
+&rcar_adsp_sound {
+	status = "okay";
+	/* Multiple DAI */
+	#sound-dai-cells = <1>;
+
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		adsp_port0: port@0 {
+			reg = <0>;
+			adsp_endpoint0: endpoint {
+				remote-endpoint = <&ak4613_endpoint0>;
+				dai-format = "left_j";
+			};
+		};
+		adsp_port1: port@1 {
+			reg = <1>;
+			adsp_endpoint1: endpoint {
+				remote-endpoint = <&ak4613_endpoint1>;
+				dai-format = "left_j";
+			};
+		};
+		adsp_port2: port@2 {
+			reg = <2>;
+			adsp_endpoint2: endpoint {
+				remote-endpoint = <&ak4613_endpoint2>;
+				dai-format = "left_j";
+			};
+		};
+		adsp_port3: port@3 {
+			reg = <3>;
+			adsp_endpoint3: endpoint {
+				remote-endpoint = <&ak4613_endpoint3>;
+				dai-format = "left_j";
+			};
+		};
+	};
+};
+
 &rcar_sound {
 	pinctrl-0 = <&sound_pins>, <&sound_clk_pins>;
 	pinctrl-names = "default";
@@ -780,13 +851,22 @@
 		 <&audio_clk_a>, <&cs2000>, <&audio_clk_c>,
 		 <&cpg CPG_CORE R8A77990_CLK_ZA2>;
 
-	rcar_sound,dai {
-		dai0 {
-			playback = <&ssi0>, <&src0>, <&dvc0>;
-			capture  = <&ssi1>, <&src1>, <&dvc1>;
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		rsnd_port0: port@0 {
+			reg = <0>;
+			rsnd_endpoint0: endpoint {
+				remote-endpoint = <&ak4613_endpoint4>;
+
+				dai-format = "left_j";
+				bitclock-master = <&rsnd_endpoint0>;
+				frame-master = <&rsnd_endpoint0>;
+				playback = <&ssi0 &src0 &dvc0>;
+				capture  = <&ssi1 &src1 &dvc1>;
+			};
 		};
 	};
-
 };
 
 &rwdt {
diff --git a/arch/arm64/boot/dts/renesas/r8a77990-es10-ebisu.dts b/arch/arm64/boot/dts/renesas/r8a77990-es10-ebisu.dts
index da4a2ca0d151..aa63d681ea85 100644
--- a/arch/arm64/boot/dts/renesas/r8a77990-es10-ebisu.dts
+++ b/arch/arm64/boot/dts/renesas/r8a77990-es10-ebisu.dts
@@ -244,21 +244,28 @@
 		regulator-always-on;
 	};
 
-	rsnd_ak4613: sound {
-		compatible = "simple-audio-card";
-
-		simple-audio-card,name = "rsnd-ak4613";
-		simple-audio-card,format = "left_j";
-		simple-audio-card,bitclock-master = <&sndcpu>;
-		simple-audio-card,frame-master = <&sndcpu>;
-
-		sndcodec: simple-audio-card,codec {
-			sound-dai = <&ak4613>;
-		};
-
-		sndcpu: simple-audio-card,cpu {
-			sound-dai = <&rcar_sound>;
-		};
+	sound_card: sound {
+		compatible = "audio-graph-scu-card";
+
+		label = "rcar-sound";
+
+		prefix = "ak4613";
+		routing = "ak4613 Playback", "Playback0",
+				"ak4613 Playback", "Playback1",
+				"ak4613 Playback", "Playback2",
+				"ak4613 Playback", "Playback3",
+				"Capture0", "ak4613 Capture",
+				"Capture1", "ak4613 Capture",
+				"Capture2", "ak4613 Capture",
+				"Capture3", "ak4613 Capture",
+				"ak4613 Playback", "DAI0 Playback",
+				"DAI0 Capture", "ak4613 Capture";
+
+		dais = <&adsp_port0
+			&adsp_port1
+			&adsp_port2
+			&adsp_port3
+			&rsnd_port0>;
 	};
 
 	vbus0_usb2: regulator-vbus0-usb2 {
@@ -568,6 +575,31 @@
 		asahi-kasei,out4-single-end;
 		asahi-kasei,out5-single-end;
 		asahi-kasei,out6-single-end;
+
+		port {
+			#address-cells = <1>;
+			#size-cells = <0>;
+			ak4613_endpoint0: endpoint@0 {
+				reg = <0>;
+				remote-endpoint = <&adsp_endpoint0>;
+			};
+			ak4613_endpoint1: endpoint@1 {
+				reg = <1>;
+				remote-endpoint = <&adsp_endpoint1>;
+			};
+			ak4613_endpoint2: endpoint@2 {
+				reg = <2>;
+				remote-endpoint = <&adsp_endpoint2>;
+			};
+			ak4613_endpoint3: endpoint@3 {
+				reg = <3>;
+				remote-endpoint = <&adsp_endpoint3>;
+			};
+			ak4613_endpoint4: endpoint@4 {
+				reg = <4>;
+				remote-endpoint = <&rsnd_endpoint0>;
+			};
+		};
 	};
 
 	cs2000: clk-multiplier@4f {
@@ -753,6 +785,45 @@
 	status = "okay";
 };
 
+&rcar_adsp_sound {
+	status = "okay";
+	/* Multiple DAI */
+	#sound-dai-cells = <1>;
+
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		adsp_port0: port@0 {
+			reg = <0>;
+			adsp_endpoint0: endpoint {
+				remote-endpoint = <&ak4613_endpoint0>;
+				dai-format = "left_j";
+			};
+		};
+		adsp_port1: port@1 {
+			reg = <1>;
+			adsp_endpoint1: endpoint {
+				remote-endpoint = <&ak4613_endpoint1>;
+				dai-format = "left_j";
+			};
+		};
+		adsp_port2: port@2 {
+			reg = <2>;
+			adsp_endpoint2: endpoint {
+				remote-endpoint = <&ak4613_endpoint2>;
+				dai-format = "left_j";
+			};
+		};
+		adsp_port3: port@3 {
+			reg = <3>;
+			adsp_endpoint3: endpoint {
+				remote-endpoint = <&ak4613_endpoint3>;
+				dai-format = "left_j";
+			};
+		};
+	};
+};
+
 &rcar_sound {
 	pinctrl-0 = <&sound_pins &sound_clk_pins>;
 	pinctrl-names = "default";
@@ -784,13 +855,22 @@
 		 <&audio_clk_a>, <&cs2000>, <&audio_clk_c>,
 		 <&cpg CPG_CORE R8A77990_CLK_ZA2>;
 
-	rcar_sound,dai {
-		dai0 {
-			playback = <&ssi0 &src0 &dvc0>;
-			capture  = <&ssi1 &src1 &dvc1>;
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		rsnd_port0: port@0 {
+			reg = <0>;
+			rsnd_endpoint0: endpoint {
+				remote-endpoint = <&ak4613_endpoint4>;
+
+				dai-format = "left_j";
+				bitclock-master = <&rsnd_endpoint0>;
+				frame-master = <&rsnd_endpoint0>;
+				playback = <&ssi0 &src0 &dvc0>;
+				capture  = <&ssi1 &src1 &dvc1>;
+			};
 		};
 	};
-
 };
 
 &rwdt {
diff --git a/arch/arm64/boot/dts/renesas/r8a77990.dtsi b/arch/arm64/boot/dts/renesas/r8a77990.dtsi
index 0cb655720e55..a118c13a1bc3 100644
--- a/arch/arm64/boot/dts/renesas/r8a77990.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a77990.dtsi
@@ -183,6 +183,11 @@
 		method = "smc";
 	};
 
+    rcar_adsp_sound: adsp_sound {
+               compatible =  "renesas,rcar_adsp_sound_gen3";
+               status = "disabled";
+       };
+
 	/* External SCIF clock - to be overridden by boards that provide it */
 	scif_clk: scif {
 		compatible = "fixed-clock";
