mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
ARM: dts: imx28-amarula-rmm: add I2S audio
Add support for I2S audio on Amarula rmm board. Audio codec TLV320AIC3X is connected as slave to SAIF0, which provides bitclock, frame and MCLK. Co-developed-by: Michael Trimarchi <michael@amarulasolutions.com> Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com> Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
committed by
Shawn Guo
parent
adf6a5a275
commit
2f185905da
@@ -112,6 +112,29 @@
|
|||||||
enable-active-high;
|
enable-active-high;
|
||||||
regulator-always-on;
|
regulator-always-on;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
sound {
|
||||||
|
compatible = "simple-audio-card";
|
||||||
|
simple-audio-card,name = "imx28-mrmmi-tlv320aic3x-audio";
|
||||||
|
simple-audio-card,format = "i2s";
|
||||||
|
simple-audio-card,bitclock-master = <&cpu_dai>;
|
||||||
|
simple-audio-card,frame-master = <&cpu_dai>;
|
||||||
|
simple-audio-card,widgets =
|
||||||
|
"Headphone", "Headphone Jack";
|
||||||
|
simple-audio-card,routing =
|
||||||
|
"Headphone Jack", "HPROUT",
|
||||||
|
"Headphone Jack", "HPRCOM";
|
||||||
|
simple-audio-card,mclk-fs = <512>;
|
||||||
|
|
||||||
|
cpu_dai: simple-audio-card,cpu {
|
||||||
|
sound-dai = <&saif0>;
|
||||||
|
clocks = <&saif0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
codec_dai: simple-audio-card,codec {
|
||||||
|
sound-dai = <&tlv320aic3x>;
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
&auart0 {
|
&auart0 {
|
||||||
@@ -154,6 +177,19 @@
|
|||||||
pinctrl-0 = <&i2c0_pins_a>;
|
pinctrl-0 = <&i2c0_pins_a>;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
|
tlv320aic3x: audio-codec@18 {
|
||||||
|
compatible = "ti,tlv320aic3x";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&tlv320aic3x_pins>;
|
||||||
|
reg = <0x18>;
|
||||||
|
reset-gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
|
||||||
|
#sound-dai-cells = <0>;
|
||||||
|
DVDD-supply = <®_1v8>;
|
||||||
|
IOVDD-supply = <®_3v3>;
|
||||||
|
AVDD-supply = <®_3v3>;
|
||||||
|
DRVDD-supply = <®_3v3>;
|
||||||
|
};
|
||||||
|
|
||||||
touchscreen: touchscreen@38 {
|
touchscreen: touchscreen@38 {
|
||||||
compatible = "edt,edt-ft5306";
|
compatible = "edt,edt-ft5306";
|
||||||
reg = <0x38>;
|
reg = <0x38>;
|
||||||
@@ -246,6 +282,14 @@
|
|||||||
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
tlv320aic3x_pins: tlv320aic3x-pins@0 {
|
||||||
|
reg = <0>;
|
||||||
|
fsl,pinmux-ids = <MX28_PAD_SSP0_DATA4__GPIO_2_4>;
|
||||||
|
fsl,drive-strength = <MXS_DRIVE_4mA>;
|
||||||
|
fsl,pull-up = <MXS_PULL_ENABLE>;
|
||||||
|
fsl,voltage = <MXS_VOLTAGE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
usb0_vbus_enable_pin: usb0-vbus-enable@0 {
|
usb0_vbus_enable_pin: usb0-vbus-enable@0 {
|
||||||
reg = <0>;
|
reg = <0>;
|
||||||
fsl,pinmux-ids = <MX28_PAD_SSP0_DATA5__GPIO_2_5>;
|
fsl,pinmux-ids = <MX28_PAD_SSP0_DATA5__GPIO_2_5>;
|
||||||
@@ -269,6 +313,12 @@
|
|||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&saif0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&saif0_pins_a>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
/* microSD */
|
/* microSD */
|
||||||
&ssp0 {
|
&ssp0 {
|
||||||
compatible = "fsl,imx28-mmc";
|
compatible = "fsl,imx28-mmc";
|
||||||
|
|||||||
Reference in New Issue
Block a user