From: Jernej Skrabec <jernej.skra...@siol.net>

Add a simple-soundcard to link audio between HDMI and I2S.

Signed-off-by: Jernej Skrabec <jernej.skra...@siol.net>
Signed-off-by: Marcus Cooper <codekip...@gmail.com>
Signed-off-by: Clément Péron <peron.c...@gmail.com>
---
 arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 32 ++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi 
b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
index 9ce78a7b117d..9597f40b25a9 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
@@ -67,6 +67,24 @@ de: display-engine {
                status = "disabled";
        };
 
+       hdmi_sound: hdmi-sound {
+               compatible = "simple-audio-card";
+               simple-audio-card,format = "i2s";
+               simple-audio-card,name = "sun50i-h6-hdmi";
+               simple-audio-card,mclk-fs = <128>;
+               status = "disabled";
+
+               simple-audio-card,codec {
+                       sound-dai = <&hdmi>;
+               };
+
+               simple-audio-card,cpu {
+                       sound-dai = <&i2s1>;
+                       dai-tdm-slot-num = <2>;
+                       dai-tdm-slot-width = <32>;
+               };
+       };
+
        osc24M: osc24M_clk {
                #clock-cells = <0>;
                compatible = "fixed-clock";
@@ -608,6 +626,19 @@ mdio: mdio {
                        };
                };
 
+               i2s1: i2s@5091000 {
+                       #sound-dai-cells = <0>;
+                       compatible = "allwinner,sun50i-h6-i2s";
+                       reg = <0x05091000 0x1000>;
+                       interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
+                       clocks = <&ccu CLK_BUS_I2S1>, <&ccu CLK_I2S1>;
+                       clock-names = "apb", "mod";
+                       dmas = <&dma 4>, <&dma 4>;
+                       resets = <&ccu RST_BUS_I2S1>;
+                       dma-names = "rx", "tx";
+                       status = "disabled";
+               };
+
                spdif: spdif@5093000 {
                        #sound-dai-cells = <0>;
                        compatible = "allwinner,sun50i-h6-spdif";
@@ -738,6 +769,7 @@ ohci3: usb@5311400 {
                };
 
                hdmi: hdmi@6000000 {
+                       #sound-dai-cells = <0>;
                        compatible = "allwinner,sun50i-h6-dw-hdmi";
                        reg = <0x06000000 0x10000>;
                        reg-io-width = <1>;
-- 
2.25.1

Reply via email to