Commit 18960771 authored by Marcin Wojtas's avatar Marcin Wojtas Committed by Gregory CLEMENT
Browse files

ARM: mvebu: add audio support to Armada 385 DB



This commit adds the necessary Device Tree information to enable
audio support on the Armada 385 DB platform. In details it:

 * Instantiates the CS42L51 audio codec on the I2C0 bus

 * Adds simple-card DT binding for audio on Armada 385 DB

 * Adds description for both analog I2S and S/PDIF I/O

 * Disabled by default

Signed-off-by: default avatarMarcin Wojtas <mw@semihalf.com>
Signed-off-by: default avatarNadav Haklai <nadavh@marvell.com>
Tested-by: default avatarStar_Automation <star@marvell.com>
Tested-by: default avatarLior Amsalem <alior@marvell.com>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarGregory CLEMENT <gregory.clement@bootlin.com>
parent 72ef30aa
Loading
Loading
Loading
Loading
+69 −0
Original line number Diff line number Diff line
@@ -36,6 +36,11 @@ internal-regs {
			i2c@11000 {
				status = "okay";
				clock-frequency = <100000>;
				audio_codec: audio-codec@4a {
					#sound-dai-cells = <0>;
					compatible = "cirrus,cs42l51";
					reg = <0x4a>;
				};
			};

			i2c@11100 {
@@ -99,6 +104,12 @@ sdhci@d8000 {
				no-1-8-v;
			};

			audio-controller@e8000 {
				pinctrl-0 = <&i2s_pins>;
				pinctrl-names = "default";
				status = "disabled";
			};

			usb3@f0000 {
				status = "okay";
			};
@@ -128,6 +139,64 @@ pcie@2,0 {
			};
		};
	};

	sound {
		compatible = "simple-audio-card";
		simple-audio-card,name = "Armada 385 DB Audio";
		simple-audio-card,mclk-fs = <256>;
		simple-audio-card,widgets =
			"Headphone", "Out Jack",
			"Line", "In Jack";
		simple-audio-card,routing =
			"Out Jack", "HPL",
			"Out Jack", "HPR",
			"AIN1L", "In Jack",
			"AIN1R", "In Jack";
		status = "disabled";

		simple-audio-card,dai-link@0 {
			format = "i2s";
			cpu {
				sound-dai = <&audio_controller 0>;
			};

			codec {
				sound-dai = <&audio_codec>;
			};
		};

		simple-audio-card,dai-link@1 {
			format = "i2s";
			cpu {
				sound-dai = <&audio_controller 1>;
			};

			codec {
				sound-dai = <&spdif_out>;
			};
		};

		simple-audio-card,dai-link@2 {
			format = "i2s";
			cpu {
				sound-dai = <&audio_controller 1>;
			};

			codec {
				sound-dai = <&spdif_in>;
			};
		};
	};

	spdif_out: spdif-out {
		#sound-dai-cells = <0>;
		compatible = "linux,spdif-dit";
	};

	spdif_in: spdif-in {
		#sound-dai-cells = <0>;
		compatible = "linux,spdif-dir";
	};
};

&spi0 {