Loading...
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Copyright 2013 Christian Hemp, Phytec Messtechnik GmbH
4 */
5
6#include <dt-bindings/sound/fsl-imx-audmux.h>
7
8/ {
9 chosen {
10 stdout-path = &uart4;
11 };
12
13 sound_1v8: regulator-sound-1v8 {
14 compatible = "regulator-fixed";
15 regulator-name = "i2s-audio-1v8";
16 regulator-min-microvolt = <1800000>;
17 regulator-max-microvolt = <1800000>;
18 };
19
20 sound_3v3: regulator-sound-3v3 {
21 compatible = "regulator-fixed";
22 regulator-name = "i2s-audio-3v3";
23 regulator-min-microvolt = <3300000>;
24 regulator-max-microvolt = <3300000>;
25 };
26
27 tlv320_mclk: oscillator {
28 compatible = "fixed-clock";
29 #clock-cells = <0>;
30 clock-frequency = <19200000>;
31 clock-output-names = "tlv320-mclk";
32 };
33
34 sound {
35 compatible = "simple-audio-card";
36 simple-audio-card,name = "OnboardTLV320AIC3007";
37 simple-audio-card,format = "i2s";
38 simple-audio-card,bitclock-master = <&dailink_master>;
39 simple-audio-card,frame-master = <&dailink_master>;
40 simple-audio-card,widgets =
41 "Microphone", "Mic Jack",
42 "Line", "Line In",
43 "Line", "Line Out",
44 "Speaker", "Speaker",
45 "Headphone", "Headphone Jack";
46 simple-audio-card,routing =
47 "Line Out", "LLOUT",
48 "Line Out", "RLOUT",
49 "Speaker", "SPOP",
50 "Speaker", "SPOM",
51 "Headphone Jack", "HPLOUT",
52 "Headphone Jack", "HPROUT",
53 "MIC3L", "Mic Jack",
54 "MIC3R", "Mic Jack",
55 "Mic Jack", "Mic Bias",
56 "LINE1L", "Line In",
57 "LINE1R", "Line In";
58
59 simple-audio-card,cpu {
60 sound-dai = <&ssi2>;
61 };
62
63 dailink_master: simple-audio-card,codec {
64 sound-dai = <&codec>;
65 clocks = <&tlv320_mclk>;
66 };
67 };
68
69};
70
71&audmux {
72 status = "okay";
73
74 mux-ssi2 {
75 fsl,audmux-port = <1>;
76 fsl,port-config = <
77 (IMX_AUDMUX_V2_PTCR_SYN |
78 IMX_AUDMUX_V2_PTCR_TFSDIR |
79 IMX_AUDMUX_V2_PTCR_TFSEL(4) |
80 IMX_AUDMUX_V2_PTCR_TCLKDIR |
81 IMX_AUDMUX_V2_PTCR_TCSEL(4))
82 IMX_AUDMUX_V2_PDCR_RXDSEL(4)
83 >;
84 };
85
86 mux-pins5 {
87 fsl,audmux-port = <4>;
88 fsl,port-config = <
89 IMX_AUDMUX_V2_PTCR_SYN
90 IMX_AUDMUX_V2_PDCR_RXDSEL(1)
91 >;
92 };
93};
94
95&can1 {
96 status = "okay";
97};
98
99&fec {
100 status = "okay";
101};
102
103&hdmi {
104 status = "okay";
105};
106
107&i2c2 {
108 status = "okay";
109
110 codec: tlv320@18 {
111 compatible = "ti,tlv320aic3007";
112 #sound-dai-cells = <0>;
113 reg = <0x18>;
114 ai3x-micbias-vg = <2>;
115
116 AVDD-supply = <&sound_3v3>;
117 IOVDD-supply = <&sound_3v3>;
118 DRVDD-supply = <&sound_3v3>;
119 DVDD-supply = <&sound_1v8>;
120 };
121
122 stmpe@41 {
123 compatible = "st,stmpe811";
124 reg = <0x41>;
125 };
126
127 rtc@51 {
128 compatible = "epson,rtc8564";
129 reg = <0x51>;
130 };
131
132 adc@64 {
133 compatible = "maxim,max1037";
134 reg = <0x64>;
135 };
136};
137
138&i2c3 {
139 status = "okay";
140};
141
142&pcie {
143 status = "okay";
144};
145
146&ssi2 {
147 status = "okay";
148};
149
150&uart3 {
151 status = "okay";
152};
153
154&uart4 {
155 status = "okay";
156};
157
158&usbh1 {
159 status = "okay";
160};
161
162&usbotg {
163 status = "okay";
164 dr_mode = "peripheral";
165};
166
167&usdhc2 {
168 status = "okay";
169};
170
171&usdhc3 {
172 status = "okay";
173};