Skip to content

Commit

Permalink
ARM: dts: pbab01: enable I2S audio on phyFLEX-i.MX6 boards
Browse files Browse the repository at this point in the history
Audio on phyFLEX boards is presented by tlv320aic3007 codec connected
over SSI interface.

Signed-off-by: Dmitry Lavnikevich <d.lavnikevich@sam-solutions.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
  • Loading branch information
Dmitry Lavnikevich authored and Shawn Guo committed Nov 23, 2014
1 parent d76fab8 commit 8fa91c8
Show file tree
Hide file tree
Showing 2 changed files with 114 additions and 2 deletions.
101 changes: 99 additions & 2 deletions arch/arm/boot/dts/imx6qdl-phytec-pbab01.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,96 @@
* http://www.gnu.org/copyleft/gpl.html
*/

#include <dt-bindings/sound/fsl-imx-audmux.h>

/ {
chosen {
linux,stdout-path = &uart4;
};

regulators {
sound_1v8: regulator@2 {
compatible = "regulator-fixed";
reg = <2>;
regulator-name = "i2s-audio-1v8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};

sound_3v3: regulator@3 {
compatible = "regulator-fixed";
reg = <3>;
regulator-name = "i2s-audio-3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
};

tlv320_mclk: oscillator {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <19200000>;
clock-output-names = "tlv320-mclk";
};

sound {
compatible = "simple-audio-card";
simple-audio-card,name = "OnboardTLV320AIC3007";
simple-audio-card,format = "i2s";
simple-audio-card,bitclock-master = <&dailink_master>;
simple-audio-card,frame-master = <&dailink_master>;
simple-audio-card,widgets =
"Microphone", "Mic Jack",
"Line", "Line In",
"Line", "Line Out",
"Speaker", "Speaker",
"Headphone", "Headphone Jack";
simple-audio-card,routing =
"Line Out", "LLOUT",
"Line Out", "RLOUT",
"Speaker", "SPOP",
"Speaker", "SPOM",
"Headphone Jack", "HPLOUT",
"Headphone Jack", "HPROUT",
"MIC3L", "Mic Jack",
"MIC3R", "Mic Jack",
"Mic Jack", "Mic Bias",
"LINE1L", "Line In",
"LINE1R", "Line In";

simple-audio-card,cpu {
sound-dai = <&ssi2>;
};

dailink_master: simple-audio-card,codec {
sound-dai = <&codec>;
clocks = <&tlv320_mclk>;
};
};

};

&audmux {
status = "okay";

ssi2 {
fsl,audmux-port = <1>;
fsl,port-config = <
(IMX_AUDMUX_V2_PTCR_TFSDIR |
IMX_AUDMUX_V2_PTCR_TFSEL(4) |
IMX_AUDMUX_V2_PTCR_TCLKDIR |
IMX_AUDMUX_V2_PTCR_TCSEL(4))
IMX_AUDMUX_V2_PDCR_RXDSEL(4)
>;
};

pins5 {
fsl,audmux-port = <4>;
fsl,port-config = <
0x00000000
IMX_AUDMUX_V2_PDCR_RXDSEL(1)
>;
};
};

&fec {
Expand All @@ -30,9 +116,16 @@
&i2c2 {
status = "okay";

tlv320@18 {
compatible = "ti,tlv320aic3x";
codec: tlv320@18 {
compatible = "ti,tlv320aic3007";
#sound-dai-cells = <0>;
reg = <0x18>;
ai3x-micbias-vg = <2>;

AVDD-supply = <&sound_3v3>;
IOVDD-supply = <&sound_3v3>;
DRVDD-supply = <&sound_3v3>;
DVDD-supply = <&sound_1v8>;
};

stmpe@41 {
Expand All @@ -55,6 +148,10 @@
status = "okay";
};

&ssi2 {
status = "okay";
};

&uart3 {
status = "okay";
};
Expand Down
15 changes: 15 additions & 0 deletions arch/arm/boot/dts/imx6qdl-phytec-pfla02.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,12 @@
};
};

&audmux {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_audmux>;
status = "disabled";
};

&ecspi3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi3>;
Expand Down Expand Up @@ -319,6 +325,15 @@
MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000
>;
};

pinctrl_audmux: audmuxgrp {
fsl,pins = <
MX6QDL_PAD_DISP0_DAT16__AUD5_TXC 0x130b0
MX6QDL_PAD_DISP0_DAT17__AUD5_TXD 0x110b0
MX6QDL_PAD_DISP0_DAT18__AUD5_TXFS 0x130b0
MX6QDL_PAD_DISP0_DAT19__AUD5_RXD 0x130b0
>;
};
};
};

Expand Down

0 comments on commit 8fa91c8

Please sign in to comment.