ARM: dts: ls1021a: Add dts nodes for audio on LS1021A

This patch adds dts nodes for audio on LS1021A.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
Alison Wang 2015-07-15 16:02:46 +08:00 committed by Shawn Guo
parent 0f92fd49ff
commit 50897cb6fa
3 changed files with 138 additions and 6 deletions

View File

@ -58,6 +58,55 @@
enet0_sgmii_phy = &sgmii_phy1c; enet0_sgmii_phy = &sgmii_phy1c;
enet1_sgmii_phy = &sgmii_phy1d; enet1_sgmii_phy = &sgmii_phy1d;
}; };
sys_mclk: clock-mclk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <24576000>;
};
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
reg_3p3v: regulator@0 {
compatible = "regulator-fixed";
reg = <0>;
regulator-name = "3P3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
};
sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
simple-audio-card,widgets =
"Microphone", "Microphone Jack",
"Headphone", "Headphone Jack",
"Speaker", "Speaker Ext",
"Line", "Line In Jack";
simple-audio-card,routing =
"MIC_IN", "Microphone Jack",
"Microphone Jack", "Mic Bias",
"LINE_IN", "Line In Jack",
"Headphone Jack", "HP_OUT",
"Speaker Ext", "LINE_OUT";
simple-audio-card,cpu {
sound-dai = <&sai2>;
frame-master;
bitclock-master;
};
simple-audio-card,codec {
sound-dai = <&codec>;
frame-master;
bitclock-master;
};
};
}; };
&dspi0 { &dspi0 {
@ -79,6 +128,7 @@
status = "okay"; status = "okay";
pca9547: mux@77 { pca9547: mux@77 {
compatible = "nxp,pca9547";
reg = <0x77>; reg = <0x77>;
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
@ -133,6 +183,21 @@
reg = <0x4c>; reg = <0x4c>;
}; };
}; };
i2c@4 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x4>;
codec: sgtl5000@2a {
#sound-dai-cells = <0>;
compatible = "fsl,sgtl5000";
reg = <0x2a>;
VDDA-supply = <&reg_3p3v>;
VDDIO-supply = <&reg_3p3v>;
clocks = <&sys_mclk 1>;
};
};
}; };
}; };
@ -231,6 +296,10 @@
}; };
}; };
&sai2 {
status = "okay";
};
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };

View File

@ -56,6 +56,55 @@
enet0_sgmii_phy = &sgmii_phy2; enet0_sgmii_phy = &sgmii_phy2;
enet1_sgmii_phy = &sgmii_phy0; enet1_sgmii_phy = &sgmii_phy0;
}; };
sys_mclk: clock-mclk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <24576000>;
};
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
reg_3p3v: regulator@0 {
compatible = "regulator-fixed";
reg = <0>;
regulator-name = "3P3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
};
sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
simple-audio-card,widgets =
"Microphone", "Microphone Jack",
"Headphone", "Headphone Jack",
"Speaker", "Speaker Ext",
"Line", "Line In Jack";
simple-audio-card,routing =
"MIC_IN", "Microphone Jack",
"Microphone Jack", "Mic Bias",
"LINE_IN", "Line In Jack",
"Headphone Jack", "HP_OUT",
"Speaker Ext", "LINE_OUT";
simple-audio-card,cpu {
sound-dai = <&sai1>;
frame-master;
bitclock-master;
};
simple-audio-card,codec {
sound-dai = <&codec>;
frame-master;
bitclock-master;
};
};
}; };
&dspi1 { &dspi1 {
@ -79,6 +128,14 @@
&i2c1 { &i2c1 {
status = "okay"; status = "okay";
codec: sgtl5000@a {
#sound-dai-cells = <0>;
compatible = "fsl,sgtl5000";
reg = <0x0a>;
VDDA-supply = <&reg_3p3v>;
VDDIO-supply = <&reg_3p3v>;
clocks = <&sys_mclk 1>;
};
}; };
&ifc { &ifc {
@ -118,6 +175,10 @@
}; };
}; };
&sai1 {
status = "okay";
};
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };

View File

@ -342,28 +342,30 @@
}; };
sai1: sai@2b50000 { sai1: sai@2b50000 {
#sound-dai-cells = <0>;
compatible = "fsl,vf610-sai"; compatible = "fsl,vf610-sai";
reg = <0x0 0x2b50000 0x0 0x10000>; reg = <0x0 0x2b50000 0x0 0x10000>;
interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&platform_clk 1>; clocks = <&platform_clk 1>, <&platform_clk 1>,
clock-names = "sai"; <&platform_clk 1>, <&platform_clk 1>;
clock-names = "bus", "mclk1", "mclk2", "mclk3";
dma-names = "tx", "rx"; dma-names = "tx", "rx";
dmas = <&edma0 1 47>, dmas = <&edma0 1 47>,
<&edma0 1 46>; <&edma0 1 46>;
big-endian;
status = "disabled"; status = "disabled";
}; };
sai2: sai@2b60000 { sai2: sai@2b60000 {
#sound-dai-cells = <0>;
compatible = "fsl,vf610-sai"; compatible = "fsl,vf610-sai";
reg = <0x0 0x2b60000 0x0 0x10000>; reg = <0x0 0x2b60000 0x0 0x10000>;
interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&platform_clk 1>; clocks = <&platform_clk 1>, <&platform_clk 1>,
clock-names = "sai"; <&platform_clk 1>, <&platform_clk 1>;
clock-names = "bus", "mclk1", "mclk2", "mclk3";
dma-names = "tx", "rx"; dma-names = "tx", "rx";
dmas = <&edma0 1 45>, dmas = <&edma0 1 45>,
<&edma0 1 44>; <&edma0 1 44>;
big-endian;
status = "disabled"; status = "disabled";
}; };