Loading...
Note: File does not exist in v6.2.
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 */
4
5#include "imx27-phytec-phycore-som.dtsi"
6
7/ {
8 model = "Phytec pcm970";
9 compatible = "phytec,imx27-pcm970", "phytec,imx27-pcm038", "fsl,imx27";
10
11 chosen {
12 stdout-path = &uart1;
13 };
14
15 display0: LQ035Q7 {
16 model = "Sharp-LQ035Q7";
17 bits-per-pixel = <16>;
18 fsl,pcr = <0xf00080c0>;
19
20 display-timings {
21 native-mode = <&timing0>;
22 timing0: timing0 {
23 clock-frequency = <5500000>;
24 hactive = <240>;
25 vactive = <320>;
26 hback-porch = <5>;
27 hsync-len = <7>;
28 hfront-porch = <16>;
29 vback-porch = <7>;
30 vsync-len = <1>;
31 vfront-porch = <9>;
32 pixelclk-active = <1>;
33 hsync-active = <1>;
34 vsync-active = <1>;
35 de-active = <0>;
36 };
37 };
38 };
39
40 regulator-2 {
41 compatible = "regulator-fixed";
42 pinctrl-names = "default";
43 pinctrl-0 = <&pinctrl_csien>;
44 regulator-name = "CSI_EN";
45 regulator-min-microvolt = <3300000>;
46 regulator-max-microvolt = <3300000>;
47 gpio = <&gpio2 24 GPIO_ACTIVE_LOW>;
48 regulator-always-on;
49 };
50
51 usbphy2: usbphy {
52 compatible = "usb-nop-xceiv";
53 vcc-supply = <®_5v0>;
54 clocks = <&clks IMX27_CLK_DUMMY>;
55 clock-names = "main_clk";
56 #phy-cells = <0>;
57 };
58};
59
60&cspi1 {
61 pinctrl-0 = <&pinctrl_cspi1>, <&pinctrl_cspi1cs1>;
62 cs-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>,
63 <&gpio4 27 GPIO_ACTIVE_LOW>;
64};
65
66&fb {
67 pinctrl-names = "default";
68 pinctrl-0 = <&pinctrl_imxfb1>;
69 display = <&display0>;
70 lcd-supply = <®_5v0>;
71 fsl,dmacr = <0x00020010>;
72 fsl,lscr1 = <0x00120300>;
73 fsl,lpccr = <0x00a903ff>;
74 status = "okay";
75};
76
77&i2c1 {
78 clock-frequency = <400000>;
79 pinctrl-names = "default";
80 pinctrl-0 = <&pinctrl_i2c1>;
81 status = "okay";
82
83 camgpio: pca9536@41 {
84 compatible = "nxp,pca9536";
85 reg = <0x41>;
86 gpio-controller;
87 #gpio-cells = <2>;
88 };
89};
90
91&iomuxc {
92 imx27_phycore_rdk {
93 pinctrl_csien: csiengrp {
94 fsl,pins = <
95 MX27_PAD_USB_OC_B__GPIO2_24 0x0
96 >;
97 };
98
99 pinctrl_cspi1cs1: cspi1cs1grp {
100 fsl,pins = <
101 MX27_PAD_CSPI1_SS1__GPIO4_27 0x0
102 >;
103 };
104
105 pinctrl_imxfb1: imxfbgrp {
106 fsl,pins = <
107 MX27_PAD_LD0__LD0 0x0
108 MX27_PAD_LD1__LD1 0x0
109 MX27_PAD_LD2__LD2 0x0
110 MX27_PAD_LD3__LD3 0x0
111 MX27_PAD_LD4__LD4 0x0
112 MX27_PAD_LD5__LD5 0x0
113 MX27_PAD_LD6__LD6 0x0
114 MX27_PAD_LD7__LD7 0x0
115 MX27_PAD_LD8__LD8 0x0
116 MX27_PAD_LD9__LD9 0x0
117 MX27_PAD_LD10__LD10 0x0
118 MX27_PAD_LD11__LD11 0x0
119 MX27_PAD_LD12__LD12 0x0
120 MX27_PAD_LD13__LD13 0x0
121 MX27_PAD_LD14__LD14 0x0
122 MX27_PAD_LD15__LD15 0x0
123 MX27_PAD_LD16__LD16 0x0
124 MX27_PAD_LD17__LD17 0x0
125 MX27_PAD_CLS__CLS 0x0
126 MX27_PAD_CONTRAST__CONTRAST 0x0
127 MX27_PAD_LSCLK__LSCLK 0x0
128 MX27_PAD_OE_ACD__OE_ACD 0x0
129 MX27_PAD_PS__PS 0x0
130 MX27_PAD_REV__REV 0x0
131 MX27_PAD_SPL_SPR__SPL_SPR 0x0
132 MX27_PAD_HSYNC__HSYNC 0x0
133 MX27_PAD_VSYNC__VSYNC 0x0
134 >;
135 };
136
137 pinctrl_i2c1: i2c1grp {
138 /* Add pullup to DATA line */
139 fsl,pins = <
140 MX27_PAD_I2C_DATA__I2C_DATA 0x1
141 MX27_PAD_I2C_CLK__I2C_CLK 0x0
142 >;
143 };
144
145 pinctrl_owire1: owire1grp {
146 fsl,pins = <
147 MX27_PAD_RTCK__OWIRE 0x0
148 >;
149 };
150
151 pinctrl_sdhc2: sdhc2grp {
152 fsl,pins = <
153 MX27_PAD_SD2_CLK__SD2_CLK 0x0
154 MX27_PAD_SD2_CMD__SD2_CMD 0x0
155 MX27_PAD_SD2_D0__SD2_D0 0x0
156 MX27_PAD_SD2_D1__SD2_D1 0x0
157 MX27_PAD_SD2_D2__SD2_D2 0x0
158 MX27_PAD_SD2_D3__SD2_D3 0x0
159 MX27_PAD_SSI3_FS__GPIO3_28 0x0 /* WP */
160 MX27_PAD_SSI3_RXDAT__GPIO3_29 0x0 /* CD */
161 >;
162 };
163
164 pinctrl_uart1: uart1grp {
165 fsl,pins = <
166 MX27_PAD_UART1_TXD__UART1_TXD 0x0
167 MX27_PAD_UART1_RXD__UART1_RXD 0x0
168 MX27_PAD_UART1_CTS__UART1_CTS 0x0
169 MX27_PAD_UART1_RTS__UART1_RTS 0x0
170 >;
171 };
172
173 pinctrl_uart2: uart2grp {
174 fsl,pins = <
175 MX27_PAD_UART2_TXD__UART2_TXD 0x0
176 MX27_PAD_UART2_RXD__UART2_RXD 0x0
177 MX27_PAD_UART2_CTS__UART2_CTS 0x0
178 MX27_PAD_UART2_RTS__UART2_RTS 0x0
179 >;
180 };
181
182 pinctrl_usbh2: usbh2grp {
183 fsl,pins = <
184 MX27_PAD_USBH2_CLK__USBH2_CLK 0x0
185 MX27_PAD_USBH2_DIR__USBH2_DIR 0x0
186 MX27_PAD_USBH2_NXT__USBH2_NXT 0x0
187 MX27_PAD_USBH2_STP__USBH2_STP 0x0
188 MX27_PAD_CSPI2_SCLK__USBH2_DATA0 0x0
189 MX27_PAD_CSPI2_MOSI__USBH2_DATA1 0x0
190 MX27_PAD_CSPI2_MISO__USBH2_DATA2 0x0
191 MX27_PAD_CSPI2_SS1__USBH2_DATA3 0x0
192 MX27_PAD_CSPI2_SS2__USBH2_DATA4 0x0
193 MX27_PAD_CSPI1_SS2__USBH2_DATA5 0x0
194 MX27_PAD_CSPI2_SS0__USBH2_DATA6 0x0
195 MX27_PAD_USBH2_DATA7__USBH2_DATA7 0x0
196 >;
197 };
198
199 pinctrl_weim: weimgrp {
200 fsl,pins = <
201 MX27_PAD_CS4_B__CS4_B 0x0 /* CS4 */
202 MX27_PAD_SD1_D1__GPIO5_19 0x0 /* CAN IRQ */
203 >;
204 };
205 };
206};
207
208&owire {
209 pinctrl-names = "default";
210 pinctrl-0 = <&pinctrl_owire1>;
211 status = "okay";
212};
213
214&pmicleds {
215 ledr1: led@3 {
216 reg = <3>;
217 label = "system:red1:user";
218 };
219
220 ledg1: led@4 {
221 reg = <4>;
222 label = "system:green1:user";
223 };
224
225 ledb1: led@5 {
226 reg = <5>;
227 label = "system:blue1:user";
228 };
229
230 ledr2: led@6 {
231 reg = <6>;
232 label = "system:red2:user";
233 };
234
235 ledg2: led@7 {
236 reg = <7>;
237 label = "system:green2:user";
238 };
239
240 ledb2: led@8 {
241 reg = <8>;
242 label = "system:blue2:user";
243 };
244
245 ledr3: led@9 {
246 reg = <9>;
247 label = "system:red3:nand";
248 linux,default-trigger = "nand-disk";
249 };
250
251 ledg3: led@10 {
252 reg = <10>;
253 label = "system:green3:live";
254 linux,default-trigger = "heartbeat";
255 };
256
257 ledb3: led@11 {
258 reg = <11>;
259 label = "system:blue3:cpu";
260 linux,default-trigger = "cpu0";
261 };
262};
263
264&sdhci2 {
265 pinctrl-names = "default";
266 pinctrl-0 = <&pinctrl_sdhc2>;
267 bus-width = <4>;
268 cd-gpios = <&gpio3 29 GPIO_ACTIVE_HIGH>;
269 wp-gpios = <&gpio3 28 GPIO_ACTIVE_HIGH>;
270 vmmc-supply = <&vmmc1_reg>;
271 status = "okay";
272};
273
274&uart1 {
275 uart-has-rtscts;
276 pinctrl-names = "default";
277 pinctrl-0 = <&pinctrl_uart1>;
278 status = "okay";
279};
280
281&uart2 {
282 uart-has-rtscts;
283 pinctrl-names = "default";
284 pinctrl-0 = <&pinctrl_uart2>;
285 status = "okay";
286};
287
288&usbh2 {
289 pinctrl-names = "default";
290 pinctrl-0 = <&pinctrl_usbh2>;
291 dr_mode = "host";
292 phy_type = "ulpi";
293 vbus-supply = <®_5v0>;
294 fsl,usbphy = <&usbphy2>;
295 disable-over-current;
296 status = "okay";
297};
298
299&weim {
300 pinctrl-names = "default";
301 pinctrl-0 = <&pinctrl_weim>;
302
303 can@4,0 {
304 compatible = "nxp,sja1000";
305 reg = <4 0x00000000 0x00000100>;
306 interrupt-parent = <&gpio5>;
307 interrupts = <19 IRQ_TYPE_EDGE_FALLING>;
308 nxp,external-clock-frequency = <16000000>;
309 nxp,tx-output-config = <0x16>;
310 nxp,no-comparator-bypass;
311 fsl,weim-cs-timing = <0x0000dcf6 0x444a0301 0x44443302>;
312 };
313};