]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
ARM: dts: uniphier: add sound node for PXs2
authorKatsuhiro Suzuki <suzuki.katsuhiro@socionext.com>
Wed, 14 Mar 2018 05:26:58 +0000 (14:26 +0900)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Thu, 15 Mar 2018 14:19:05 +0000 (23:19 +0900)
This patch adds audio controller, external codec and simple card node
of UniPhier AIO sound system for PXs2 SoCs.

Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
arch/arm/boot/dts/uniphier-pxs2-gentil.dts
arch/arm/boot/dts/uniphier-pxs2-vodka.dts
arch/arm/boot/dts/uniphier-pxs2.dtsi

index 59608de7c9fc0155d9bef801b32c9239381ed79b..bed26b8ed9a3d6f4ac8c8766350002b74597b722 100644 (file)
@@ -32,6 +32,12 @@ memory@80000000 {
                device_type = "memory";
                reg = <0x80000000 0x80000000>;
        };
+
+       sound {
+               compatible = "audio-graph-card";
+               label = "UniPhier PXs2";
+               dais = <&i2s_port2>;
+       };
 };
 
 &serial2 {
@@ -48,8 +54,26 @@ eeprom@54 {
        };
 };
 
+&i2s_aux {
+       dai-format = "i2s";
+       remote-endpoint = <&wm_speaker>;
+};
+
 &i2c2 {
        status = "okay";
+
+       wm8960@1a {
+               compatible = "wlf,wm8960";
+               reg = <0x1a>;
+               #sound-dai-cells = <0>;
+
+               port@0 {
+                       wm_speaker: endpoint {
+                               dai-format = "i2s";
+                               remote-endpoint = <&i2s_aux>;
+                       };
+               };
+       };
 };
 
 &eth {
index 41706763c8bfcf727646743c61b4be99e7a96f88..b13d2d16ddad88a02d9331e642a53cacb3cdb0b8 100644 (file)
@@ -30,12 +30,49 @@ memory@80000000 {
                device_type = "memory";
                reg = <0x80000000 0x80000000>;
        };
+
+       sound {
+               compatible = "audio-graph-card";
+               label = "UniPhier PXs2";
+               dais = <&spdif_port0
+                       &comp_spdif_port0>;
+       };
+
+       spdif-out {
+               compatible = "linux,spdif-dit";
+               #sound-dai-cells = <0>;
+
+               port@0 {
+                       spdif_tx: endpoint {
+                               remote-endpoint = <&spdif_hiecout1>;
+                       };
+               };
+       };
+
+       comp-spdif-out {
+               compatible = "linux,spdif-dit";
+               #sound-dai-cells = <0>;
+
+               port@0 {
+                       comp_spdif_tx: endpoint {
+                               remote-endpoint = <&comp_spdif_hiecout1>;
+                       };
+               };
+       };
 };
 
 &serial2 {
        status = "okay";
 };
 
+&spdif_hiecout1 {
+       remote-endpoint = <&spdif_tx>;
+};
+
+&comp_spdif_hiecout1 {
+       remote-endpoint = <&comp_spdif_tx>;
+};
+
 &i2c0 {
        status = "okay";
 };
index c0a8207c948d5ab8424cb3a3e8caa515953e1e3e..595045441c9cf34310fc4d2c5fb58696adbce249 100644 (file)
@@ -225,6 +225,60 @@ gpio: gpio@55000000 {
                                                     <21 217 3>;
                };
 
+               audio@56000000 {
+                       compatible = "socionext,uniphier-pxs2-aio";
+                       reg = <0x56000000 0x80000>;
+                       interrupts = <0 144 4>;
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&pinctrl_ain1>,
+                                   <&pinctrl_ain2>,
+                                   <&pinctrl_ainiec1>,
+                                   <&pinctrl_aout2>,
+                                   <&pinctrl_aout3>,
+                                   <&pinctrl_aoutiec1>,
+                                   <&pinctrl_aoutiec2>;
+                       clock-names = "aio";
+                       clocks = <&sys_clk 40>;
+                       reset-names = "aio";
+                       resets = <&sys_rst 40>;
+                       #sound-dai-cells = <1>;
+
+                       i2s_port0: port@0 {
+                               i2s_hdmi: endpoint {
+                               };
+                       };
+
+                       i2s_port1: port@1 {
+                               i2s_line: endpoint {
+                               };
+                       };
+
+                       i2s_port2: port@2 {
+                               i2s_aux: endpoint {
+                               };
+                       };
+
+                       spdif_port0: port@3 {
+                               spdif_hiecout1: endpoint {
+                               };
+                       };
+
+                       spdif_port1: port@4 {
+                               spdif_iecout1: endpoint {
+                               };
+                       };
+
+                       comp_spdif_port0: port@5 {
+                               comp_spdif_hiecout1: endpoint {
+                               };
+                       };
+
+                       comp_spdif_port1: port@6 {
+                               comp_spdif_iecout1: endpoint {
+                               };
+                       };
+               };
+
                i2c0: i2c@58780000 {
                        compatible = "socionext,uniphier-fi2c";
                        status = "disabled";