[PATCH 8/9] arm64: dts: exynosautov920: add PCM playback/capture

ew kim ew.kim at samsung.com
Sun Jul 20 19:30:51 PDT 2025


This patch adds the PCM playback and capture device nodes as children of
the abox_generic audio controller for ExynosAuto v920.

Each PCM device is defined with a unique ID and an associated IRQ SW number
used for communication with the ADSP. These nodes include information such
as buffer size, ALSA DAI name prefix, and category type(e.g., deep_buffer).

The nodes are initially marked as "disabled" and can be enabled per board
(e.g., in the SADK .dts) as needed.

Signed-off-by: ew kim <ew.kim at samsung.com>
---
 .../boot/dts/exynos/exynosautov920-sadk.dts   |  8 +++++
 .../arm64/boot/dts/exynos/exynosautov920.dtsi | 32 +++++++++++++++++--
 2 files changed, 38 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
index 2f4cf112675a..f9f717fa95d4 100644
--- a/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
+++ b/arch/arm64/boot/dts/exynos/exynosautov920-sadk.dts
@@ -94,3 +94,11 @@ &abox_generic {
 &abox_ipc_generic {
 	status = "okay";
 };
+
+&abox_pcm_playback_0 {
+	status = "okay";
+};
+
+&abox_pcm_capture_0 {
+	status = "okay";
+};
diff --git a/arch/arm64/boot/dts/exynos/exynosautov920.dtsi b/arch/arm64/boot/dts/exynos/exynosautov920.dtsi
index 21bcbcf7e2b6..094fdec2e6f5 100644
--- a/arch/arm64/boot/dts/exynos/exynosautov920.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynosautov920.dtsi
@@ -1133,14 +1133,42 @@ abox_generic: abox_generic {
 		samsung,num-pcm-capture = <32>;
 		samsung,num-i2s-dummy-backend = <5>;
 		status = "disabled";
-		/* #address-cells = <2>; */
-		/* #size-cells = <1>; */
+		#address-cells = <1>;
+		#size-cells = <1>;

 		abox_ipc_generic: abox_ipc_generic {
 			compatible = "samsung,abox_ipc_generic";
 			samsung,num-irq = <64>;
 			status = "disabled";
 		};
+
+		abox_pcm_playback_0: abox_pcm_playback at 3fd0000 {
+			compatible = "samsung,abox-pcm-playback";
+			samsung,id = <0>;
+			samsung,irq_id = <0>;
+			samsung,allocate-adsp = <0>;
+			reg = <0x3fd0000 0x10>;
+			reg-names = "pp_pointer_offset";
+			#sound-dai-cells = <0>;
+			sound-name-prefix = "ABOX";
+			samsung,category = "deep_buffer";
+			samsung,buffer_bytes_max = <0x24000>;
+			status = "disabled";
+		};
+
+		abox_pcm_capture_0: abox_pcm_capture at 3fd0400 {
+			compatible = "samsung,abox-pcm-capture";
+			samsung,id = <0>;
+			samsung,irq_id = <32>;
+			samsung,allocate-adsp = <0>;
+			reg = <0x3fd0400 0x10>;
+			reg-names = "pp_pointer_offset";
+			#sound-dai-cells = <0>;
+			sound-name-prefix = "ABOX";
+			samsung,category = "deep_buffer";
+			samsung,buffer_bytes_max = <0x24000>;
+			status = "disabled";
+		};
 	};
 };

--
2.25.1




More information about the linux-arm-kernel mailing list