Merge branch 'for-linville' of git://github.com/kvalo/ath
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / armada-370-db.dts
index 08a56bcfc7248704b34ad1789418308819b3bcbf..82f238a9063ffe47d10dbe083f136e1876f8efd2 100644 (file)
                                phy-mode = "rgmii-id";
                        };
 
+                       i2c@11000 {
+                               pinctrl-0 = <&i2c0_pins>;
+                               pinctrl-names = "default";
+                               status = "okay";
+                               audio_codec: audio-codec@4a {
+                                       compatible = "cirrus,cs42l51";
+                                       reg = <0x4a>;
+                               };
+                       };
+
+                       audio-controller@30000 {
+                               pinctrl-0 = <&i2s_pins2>;
+                               pinctrl-names = "default";
+                               status = "okay";
+                       };
+
                        mvsdio@d4000 {
                                pinctrl-0 = <&sdio_pins1>;
                                pinctrl-names = "default";
                                broken-cd;
                        };
 
+                       pinctrl {
+                               /*
+                                * These pins might be muxed as I2S by
+                                * the bootloader, but it conflicts
+                                * with the real I2S pins that are
+                                * muxed using i2s_pins. We must mux
+                                * those pins to a function other than
+                                * I2S.
+                                */
+                               pinctrl-0 = <&hog_pins1 &hog_pins2>;
+                               pinctrl-names = "default";
+
+                               hog_pins1: hog-pins1 {
+                                       marvell,pins = "mpp6",  "mpp8", "mpp10",
+                                                      "mpp12", "mpp13";
+                                       marvell,function = "gpio";
+                               };
+
+                               hog_pins2: hog-pins2 {
+                                       marvell,pins = "mpp5", "mpp7", "mpp9";
+                                       marvell,function = "gpo";
+                               };
+                       };
+
                        usb@50000 {
                                status = "okay";
                        };
                                /* Port 0, Lane 0 */
                                status = "okay";
                        };
+
                        pcie@2,0 {
                                /* Port 1, Lane 0 */
                                status = "okay";
                        };
                };
        };
+
+       sound {
+             compatible = "marvell,a370db-audio";
+             marvell,audio-controller = <&audio_controller>;
+             marvell,audio-codec = <&audio_codec &spdif_out &spdif_in>;
+             status = "okay";
+       };
+
+       spdif_out: spdif-out {
+             compatible = "linux,spdif-dit";
+       };
+
+       spdif_in: spdif-in {
+             compatible = "linux,spdif-dir";
+       };
 };