OSDN Git Service

ARM: dts: mmp2-olpc-xo-1-75: Enable audio support
authorLubomir Rintel <lkundrak@v3.sk>
Sat, 18 Jul 2020 20:50:15 +0000 (22:50 +0200)
committerArnd Bergmann <arnd@arndb.de>
Wed, 22 Jul 2020 20:05:15 +0000 (22:05 +0200)
This enables the audio SRAM, DMA engine, I2S interface, and codec, hooks
them together and adds a audio-graph-card instance.

It also removes the jack gpios from the gpio-keys instance, because the
audio jack driver registers an input device.

Link: https://lore.kernel.org/r/20200718205019.184927-10-lkundrak@v3.sk
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/arm/boot/dts/mmp2-olpc-xo-1-75.dts

index 392f546..5f1da58 100644 (file)
                        linux,code = <SW_TABLET_MODE>;
                        wakeup-source;
                };
-
-               microphone_insert {
-                       label = "Microphone Plug";
-                       gpios = <&gpio 96 GPIO_ACTIVE_HIGH>;
-                       linux,input-type = <EV_SW>;
-                       linux,code = <SW_MICROPHONE_INSERT>;
-                       debounce-interval = <100>;
-                       wakeup-source;
-               };
-
-               headphone_insert {
-                       label = "Headphone Plug";
-                       gpios = <&gpio 97 GPIO_ACTIVE_HIGH>;
-                       linux,input-type = <EV_SW>;
-                       linux,code = <SW_HEADPHONE_INSERT>;
-                       debounce-interval = <100>;
-                       wakeup-source;
-               };
        };
 
        i2c {
                reset-gpios = <&gpio 58 GPIO_ACTIVE_HIGH>;
        };
 
+       sound-card {
+               compatible = "audio-graph-card";
+               label = "OLPC XO";
+               dais = <&sspa0_dai>;
+               routing = "Headphones", "HPOL",
+                         "Headphones", "HPOR",
+                         "MIC2", "Mic Jack";
+               widgets = "Headphone", "Headphones", "Microphone", "Mic Jack";
+               hp-det-gpio = <&gpio 97 GPIO_ACTIVE_HIGH>;
+               mic-det-gpio = <&gpio 96 GPIO_ACTIVE_HIGH>;
+       };
+
        soc {
                axi@d4200000 {
                        ap-sp@d4290000 {
                compatible = "realtek,alc5631";
                reg = <0x1a>;
                status = "okay";
+
+               port {
+                       rt5631_0: endpoint {
+                               mclk-fs = <256>;
+                               clocks = <&audio_clk 0>;
+                               remote-endpoint = <&sspa0_0>;
+                       };
+               };
        };
 };
 
                };
        };
 };
+
+&asram {
+       status = "okay";
+};
+
+&adma0 {
+       status = "okay";
+};
+
+&audio_clk {
+       status = "okay";
+};
+
+&sspa0 {
+       status = "okay";
+       dmas = <&adma0 0>, <&adma0 1>;
+       dma-names = "tx", "rx";
+
+       sspa0_dai: port {
+               sspa0_0: endpoint {
+                       remote-endpoint = <&rt5631_0>;
+                       frame-master;
+                       bitclock-master;
+                       dai-format = "i2s";
+               };
+       };
+};