summaryrefslogtreecommitdiffstats
path: root/meta-agl-bsp/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0004-ADSP-enable-and-add-sound-hardware-abstraction_kf.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-agl-bsp/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0004-ADSP-enable-and-add-sound-hardware-abstraction_kf.patch')
-rw-r--r--meta-agl-bsp/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0004-ADSP-enable-and-add-sound-hardware-abstraction_kf.patch58
1 files changed, 58 insertions, 0 deletions
diff --git a/meta-agl-bsp/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0004-ADSP-enable-and-add-sound-hardware-abstraction_kf.patch b/meta-agl-bsp/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0004-ADSP-enable-and-add-sound-hardware-abstraction_kf.patch
new file mode 100644
index 000000000..92f5af88c
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0004-ADSP-enable-and-add-sound-hardware-abstraction_kf.patch
@@ -0,0 +1,58 @@
+The ADSP on Renesas SoCs required a reserved memory area to become
+enabled, and this needs to be done manually.
+
+This patch adds sound hardware abstraction information for the m3ulcb
+and m3ulcb-kf (kingfisher) device trees. This is helpful on-board the
+ADSP for dynamically determining sound hardware at runtime, allowing
+single binaries to be used between the two boards.
+
+Future work will incorporate the h3ulcb and Salvator boards into the
+abstraction.
+
+Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
+Signed-off-by: Mark Farrugia <mark.farrugia@fiberdyne.com.au>
+---
+diff --git a/arch/arm64/boot/dts/renesas/r8a7796-m3ulcb-kf.dts b/arch/arm64/boot/dts/renesas/r8a7796-m3ulcb-kf.dts
+index de2390f009e7..4ccfa8315d17 100644
+--- a/arch/arm64/boot/dts/renesas/r8a7796-m3ulcb-kf.dts
++++ b/arch/arm64/boot/dts/renesas/r8a7796-m3ulcb-kf.dts
+@@ -15,6 +15,39 @@
+ "renesas,r8a7796";
+ };
+
++
++&adsp {
++
++ /* ADSP playback setting for pcm3168 */
++ adsp_playback0: adsp,playback {
++ mode = "tdm";
++ clock-mode = "master";
++ bus-width = <24>;
++ ssi = <3>;
++ bus-if = <0>;
++ channels = <8>;
++ pin-share-ssi = <4>;
++ };
++
++ /* ADSP capture setting for pcm3168 */
++ adsp_capture0: adsp,capture {
++ mode = "tdm";
++ clock-mode = "slave";
++ bus-width = <24>;
++ ssi = <4>;
++ bus-if = <0>;
++ channels = <8>;
++ pin-share-ssi = <3>;
++ };
++
++ adsp,ports {
++ port@0 {
++ playback = <&adsp_playback0>;
++ capture = <&adsp_capture0>;
++ };
++ };
++};
++
+ &du {
+ ports {
+ port@0 {