mirror of
https://github.com/torvalds/linux.git
synced 2026-06-07 05:55:44 +02:00
arm64: dts: freescale: imx93-phyboard-segin: Add I2S audio
Add support for I2S audio found on phyBOARD-Segin-i.MX93. Audio codec TLV320AIC3007 is connected to SAI1 interface as a DAI master. MCLK is provided from the SAI's internal audio PLL (19.2 MHz). Signed-off-by: Primoz Fiser <primoz.fiser@norik.com> Reviewed-by: Frank Li <Frank.Li@nxp.com> Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
parent
b7fed5065b
commit
c3f6c388d3
|
|
@ -35,6 +35,20 @@ flexcan1_tc: can-phy0 {
|
|||
enable-gpios = <&gpio4 16 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
reg_sound_1v8: regulator-sound-1v8 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-name = "VCC1V8_AUDIO";
|
||||
};
|
||||
|
||||
reg_sound_3v3: regulator-sound-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-name = "VCC3V3_ANALOG";
|
||||
};
|
||||
|
||||
reg_usdhc2_vmmc: regulator-usdhc2 {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
|
|
@ -45,6 +59,34 @@ reg_usdhc2_vmmc: regulator-usdhc2 {
|
|||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "VCC_SD";
|
||||
};
|
||||
|
||||
sound: sound {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "phyBOARD-Segin-TLV320AIC3007";
|
||||
simple-audio-card,format = "i2s";
|
||||
simple-audio-card,bitclock-master = <&dailink_master>;
|
||||
simple-audio-card,frame-master = <&dailink_master>;
|
||||
simple-audio-card,widgets =
|
||||
"Line", "Line In",
|
||||
"Line", "Line Out",
|
||||
"Speaker", "Speaker";
|
||||
simple-audio-card,routing =
|
||||
"Line Out", "LLOUT",
|
||||
"Line Out", "RLOUT",
|
||||
"Speaker", "SPOP",
|
||||
"Speaker", "SPOM",
|
||||
"LINE1L", "Line In",
|
||||
"LINE1R", "Line In";
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&sai1>;
|
||||
};
|
||||
|
||||
dailink_master: simple-audio-card,codec {
|
||||
sound-dai = <&audio_codec>;
|
||||
clocks = <&clk IMX93_CLK_SAI1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* CAN */
|
||||
|
|
@ -62,6 +104,17 @@ &lpi2c2 {
|
|||
pinctrl-0 = <&pinctrl_lpi2c2>;
|
||||
status = "okay";
|
||||
|
||||
/* Codec */
|
||||
audio_codec: audio-codec@18 {
|
||||
compatible = "ti,tlv320aic3007";
|
||||
reg = <0x18>;
|
||||
#sound-dai-cells = <0>;
|
||||
AVDD-supply = <®_sound_3v3>;
|
||||
IOVDD-supply = <®_sound_3v3>;
|
||||
DRVDD-supply = <®_sound_3v3>;
|
||||
DVDD-supply = <®_sound_1v8>;
|
||||
};
|
||||
|
||||
/* RTC */
|
||||
i2c_rtc: rtc@68 {
|
||||
compatible = "microcrystal,rv4162";
|
||||
|
|
@ -80,6 +133,17 @@ &lpuart1 {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
/* Audio */
|
||||
&sai1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sai1>;
|
||||
assigned-clocks = <&clk IMX93_CLK_SAI1>;
|
||||
assigned-clock-parents = <&clk IMX93_CLK_AUDIO_PLL>;
|
||||
assigned-clock-rates = <19200000>;
|
||||
fsl,sai-mclk-direction-output;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* USB */
|
||||
&usbotg1 {
|
||||
disable-over-current;
|
||||
|
|
@ -148,6 +212,16 @@ MX93_PAD_ENET2_RD2__GPIO4_IO26 0x31e
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_sai1: sai1grp {
|
||||
fsl,pins = <
|
||||
MX93_PAD_UART2_RXD__SAI1_MCLK 0x1202
|
||||
MX93_PAD_SAI1_TXFS__SAI1_TX_SYNC 0x1202
|
||||
MX93_PAD_SAI1_TXC__SAI1_TX_BCLK 0x1202
|
||||
MX93_PAD_SAI1_TXD0__SAI1_TX_DATA00 0x1402
|
||||
MX93_PAD_SAI1_RXD0__SAI1_RX_DATA00 0x1402
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_usdhc2_cd: usdhc2cdgrp {
|
||||
fsl,pins = <
|
||||
MX93_PAD_SD2_CD_B__GPIO3_IO00 0x31e
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user