xref: /openbmc/linux/arch/arm/boot/dts/nxp/imx/imx51-babbage.dts (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0+
2724ba675SRob Herring//
3724ba675SRob Herring// Copyright 2011 Freescale Semiconductor, Inc.
4724ba675SRob Herring// Copyright 2011 Linaro Ltd.
5724ba675SRob Herring
6724ba675SRob Herring/dts-v1/;
7724ba675SRob Herring#include "imx51.dtsi"
8724ba675SRob Herring
9724ba675SRob Herring/ {
10724ba675SRob Herring	model = "Freescale i.MX51 Babbage Board";
11724ba675SRob Herring	compatible = "fsl,imx51-babbage", "fsl,imx51";
12724ba675SRob Herring
13724ba675SRob Herring	chosen {
14724ba675SRob Herring		stdout-path = &uart1;
15724ba675SRob Herring	};
16724ba675SRob Herring
17724ba675SRob Herring	memory@90000000 {
18724ba675SRob Herring		device_type = "memory";
19724ba675SRob Herring		reg = <0x90000000 0x20000000>;
20724ba675SRob Herring	};
21724ba675SRob Herring
22724ba675SRob Herring	ckih1 {
23724ba675SRob Herring		clock-frequency = <22579200>;
24724ba675SRob Herring	};
25724ba675SRob Herring
26724ba675SRob Herring	clk_osc: clk-osc {
27724ba675SRob Herring		compatible = "fixed-clock";
28724ba675SRob Herring		#clock-cells = <0>;
29724ba675SRob Herring		clock-frequency = <26000000>;
30724ba675SRob Herring	};
31724ba675SRob Herring
32724ba675SRob Herring	clk_osc_gate: clk-osc-gate {
33724ba675SRob Herring		compatible = "gpio-gate-clock";
34724ba675SRob Herring		pinctrl-names = "default";
35724ba675SRob Herring		pinctrl-0 = <&pinctrl_clk26mhz_osc>;
36724ba675SRob Herring		clocks = <&clk_osc>;
37724ba675SRob Herring		#clock-cells = <0>;
38724ba675SRob Herring		enable-gpios = <&gpio3 1 GPIO_ACTIVE_HIGH>;
39724ba675SRob Herring	};
40724ba675SRob Herring
41724ba675SRob Herring	clk_audio: clk-audio {
42724ba675SRob Herring		compatible = "gpio-gate-clock";
43724ba675SRob Herring		pinctrl-names = "default";
44724ba675SRob Herring		pinctrl-0 = <&pinctrl_clk26mhz_audio>;
45724ba675SRob Herring		clocks = <&clk_osc_gate>;
46724ba675SRob Herring		#clock-cells = <0>;
47724ba675SRob Herring		enable-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
48724ba675SRob Herring	};
49724ba675SRob Herring
50724ba675SRob Herring	clk_usb: clk-usb {
51724ba675SRob Herring		compatible = "gpio-gate-clock";
52724ba675SRob Herring		pinctrl-names = "default";
53724ba675SRob Herring		pinctrl-0 = <&pinctrl_clk26mhz_usb>;
54724ba675SRob Herring		clocks = <&clk_osc_gate>;
55724ba675SRob Herring		#clock-cells = <0>;
56724ba675SRob Herring		enable-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
57724ba675SRob Herring	};
58724ba675SRob Herring
59724ba675SRob Herring	display1: disp1 {
60724ba675SRob Herring		compatible = "fsl,imx-parallel-display";
61724ba675SRob Herring		#address-cells = <1>;
62724ba675SRob Herring		#size-cells = <0>;
63724ba675SRob Herring		interface-pix-fmt = "rgb24";
64724ba675SRob Herring		pinctrl-names = "default";
65724ba675SRob Herring		pinctrl-0 = <&pinctrl_ipu_disp1>;
66724ba675SRob Herring
67724ba675SRob Herring		port@0 {
68724ba675SRob Herring		reg = <0>;
69724ba675SRob Herring
70724ba675SRob Herring			display0_in: endpoint {
71724ba675SRob Herring				remote-endpoint = <&ipu_di0_disp1>;
72724ba675SRob Herring			};
73724ba675SRob Herring		};
74724ba675SRob Herring
75724ba675SRob Herring		port@1 {
76724ba675SRob Herring			reg = <1>;
77724ba675SRob Herring
78724ba675SRob Herring			parallel_display_out: endpoint {
79724ba675SRob Herring				remote-endpoint = <&tfp410_in>;
80724ba675SRob Herring			};
81724ba675SRob Herring		};
82724ba675SRob Herring	};
83724ba675SRob Herring
84724ba675SRob Herring	display2: disp2 {
85724ba675SRob Herring		compatible = "fsl,imx-parallel-display";
86724ba675SRob Herring		interface-pix-fmt = "rgb565";
87724ba675SRob Herring		pinctrl-names = "default";
88724ba675SRob Herring		pinctrl-0 = <&pinctrl_ipu_disp2>;
89724ba675SRob Herring		status = "disabled";
90724ba675SRob Herring		display-timings {
91724ba675SRob Herring			native-mode = <&timing1>;
92724ba675SRob Herring			timing1: claawvga {
93724ba675SRob Herring				clock-frequency = <27000000>;
94724ba675SRob Herring				hactive = <800>;
95724ba675SRob Herring				vactive = <480>;
96724ba675SRob Herring				hback-porch = <40>;
97724ba675SRob Herring				hfront-porch = <60>;
98724ba675SRob Herring				vback-porch = <10>;
99724ba675SRob Herring				vfront-porch = <10>;
100724ba675SRob Herring				hsync-len = <20>;
101724ba675SRob Herring				vsync-len = <10>;
102724ba675SRob Herring				hsync-active = <0>;
103724ba675SRob Herring				vsync-active = <0>;
104724ba675SRob Herring				de-active = <1>;
105724ba675SRob Herring				pixelclk-active = <0>;
106724ba675SRob Herring			};
107724ba675SRob Herring		};
108724ba675SRob Herring
109724ba675SRob Herring		port {
110724ba675SRob Herring			display1_in: endpoint {
111724ba675SRob Herring				remote-endpoint = <&ipu_di1_disp2>;
112724ba675SRob Herring			};
113724ba675SRob Herring		};
114724ba675SRob Herring	};
115724ba675SRob Herring
116724ba675SRob Herring	dvi-connector {
117724ba675SRob Herring		compatible = "dvi-connector";
118724ba675SRob Herring		digital;
119724ba675SRob Herring
120724ba675SRob Herring		port {
121724ba675SRob Herring			dvi_connector_in: endpoint {
122724ba675SRob Herring				remote-endpoint = <&tfp410_out>;
123724ba675SRob Herring			};
124724ba675SRob Herring		};
125724ba675SRob Herring	};
126724ba675SRob Herring
127724ba675SRob Herring	dvi-encoder {
128724ba675SRob Herring		compatible = "ti,tfp410";
129724ba675SRob Herring
130724ba675SRob Herring		ports {
131724ba675SRob Herring			#address-cells = <1>;
132724ba675SRob Herring			#size-cells = <0>;
133724ba675SRob Herring
134724ba675SRob Herring			port@0 {
135724ba675SRob Herring				reg = <0>;
136724ba675SRob Herring
137724ba675SRob Herring				tfp410_in: endpoint {
138724ba675SRob Herring					remote-endpoint = <&parallel_display_out>;
139724ba675SRob Herring				};
140724ba675SRob Herring			};
141724ba675SRob Herring
142724ba675SRob Herring			port@1 {
143724ba675SRob Herring				reg = <1>;
144724ba675SRob Herring
145724ba675SRob Herring				tfp410_out: endpoint {
146724ba675SRob Herring					remote-endpoint = <&dvi_connector_in>;
147724ba675SRob Herring				};
148724ba675SRob Herring			};
149724ba675SRob Herring		};
150724ba675SRob Herring	};
151724ba675SRob Herring
152724ba675SRob Herring	gpio-keys {
153724ba675SRob Herring		compatible = "gpio-keys";
154724ba675SRob Herring		pinctrl-names = "default";
155724ba675SRob Herring		pinctrl-0 = <&pinctrl_gpio_keys>;
156724ba675SRob Herring
157724ba675SRob Herring		key-power {
158724ba675SRob Herring			label = "Power Button";
159724ba675SRob Herring			gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
160724ba675SRob Herring			linux,code = <KEY_POWER>;
161724ba675SRob Herring			wakeup-source;
162724ba675SRob Herring		};
163724ba675SRob Herring	};
164724ba675SRob Herring
165724ba675SRob Herring	leds {
166724ba675SRob Herring		compatible = "gpio-leds";
167724ba675SRob Herring		pinctrl-names = "default";
168724ba675SRob Herring		pinctrl-0 = <&pinctrl_gpio_leds>;
169724ba675SRob Herring
170724ba675SRob Herring		led-diagnostic {
171724ba675SRob Herring			label = "diagnostic";
172724ba675SRob Herring			gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
173724ba675SRob Herring		};
174724ba675SRob Herring	};
175724ba675SRob Herring
176*ec20d468SFabio Estevam	reg_hub_reset: regulator-hub-reset {
177724ba675SRob Herring		compatible = "regulator-fixed";
178724ba675SRob Herring		pinctrl-names = "default";
179724ba675SRob Herring		pinctrl-0 = <&pinctrl_usbotgreg>;
180724ba675SRob Herring		regulator-name = "hub_reset";
181724ba675SRob Herring		regulator-min-microvolt = <5000000>;
182724ba675SRob Herring		regulator-max-microvolt = <5000000>;
183724ba675SRob Herring		gpio = <&gpio1 7 GPIO_ACTIVE_HIGH>;
184724ba675SRob Herring		enable-active-high;
185724ba675SRob Herring	};
186724ba675SRob Herring
187724ba675SRob Herring	sound {
188724ba675SRob Herring		compatible = "fsl,imx51-babbage-sgtl5000",
189724ba675SRob Herring			     "fsl,imx-audio-sgtl5000";
190724ba675SRob Herring		model = "imx51-babbage-sgtl5000";
191724ba675SRob Herring		ssi-controller = <&ssi2>;
192724ba675SRob Herring		audio-codec = <&sgtl5000>;
193724ba675SRob Herring		audio-routing =
194724ba675SRob Herring			"MIC_IN", "Mic Jack",
195724ba675SRob Herring			"Mic Jack", "Mic Bias",
196724ba675SRob Herring			"Headphone Jack", "HP_OUT";
197724ba675SRob Herring		mux-int-port = <2>;
198724ba675SRob Herring		mux-ext-port = <3>;
199724ba675SRob Herring	};
200724ba675SRob Herring
201724ba675SRob Herring	usbphy1: usbphy1 {
202724ba675SRob Herring		compatible = "usb-nop-xceiv";
203724ba675SRob Herring		pinctrl-names = "default";
204724ba675SRob Herring		pinctrl-0 = <&pinctrl_usbh1reg>;
205724ba675SRob Herring		clocks = <&clk_usb>;
206724ba675SRob Herring		clock-names = "main_clk";
207724ba675SRob Herring		reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>;
208724ba675SRob Herring		vcc-supply = <&vusb_reg>;
209724ba675SRob Herring		#phy-cells = <0>;
210724ba675SRob Herring	};
211724ba675SRob Herring};
212724ba675SRob Herring
213724ba675SRob Herring&audmux {
214724ba675SRob Herring	pinctrl-names = "default";
215724ba675SRob Herring	pinctrl-0 = <&pinctrl_audmux>;
216724ba675SRob Herring	status = "okay";
217724ba675SRob Herring};
218724ba675SRob Herring
219724ba675SRob Herring&ecspi1 {
220724ba675SRob Herring	pinctrl-names = "default";
221724ba675SRob Herring	pinctrl-0 = <&pinctrl_ecspi1>;
222724ba675SRob Herring	cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>,
223724ba675SRob Herring		   <&gpio4 25 GPIO_ACTIVE_LOW>;
224724ba675SRob Herring	status = "okay";
225724ba675SRob Herring
226724ba675SRob Herring	pmic: mc13892@0 {
227724ba675SRob Herring		compatible = "fsl,mc13892";
228724ba675SRob Herring		pinctrl-names = "default";
229724ba675SRob Herring		pinctrl-0 = <&pinctrl_pmic>;
230724ba675SRob Herring		spi-max-frequency = <6000000>;
231724ba675SRob Herring		spi-cs-high;
232724ba675SRob Herring		reg = <0>;
233724ba675SRob Herring		interrupt-parent = <&gpio1>;
234724ba675SRob Herring		interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
235724ba675SRob Herring		fsl,mc13xxx-uses-adc;
236724ba675SRob Herring		fsl,mc13xxx-uses-rtc;
237724ba675SRob Herring
238724ba675SRob Herring		regulators {
239724ba675SRob Herring			sw1_reg: sw1 {
240724ba675SRob Herring				regulator-min-microvolt = <600000>;
241724ba675SRob Herring				regulator-max-microvolt = <1375000>;
242724ba675SRob Herring				regulator-boot-on;
243724ba675SRob Herring				regulator-always-on;
244724ba675SRob Herring			};
245724ba675SRob Herring
246724ba675SRob Herring			sw2_reg: sw2 {
247724ba675SRob Herring				regulator-min-microvolt = <900000>;
248724ba675SRob Herring				regulator-max-microvolt = <1850000>;
249724ba675SRob Herring				regulator-boot-on;
250724ba675SRob Herring				regulator-always-on;
251724ba675SRob Herring			};
252724ba675SRob Herring
253724ba675SRob Herring			sw3_reg: sw3 {
254724ba675SRob Herring				regulator-min-microvolt = <1100000>;
255724ba675SRob Herring				regulator-max-microvolt = <1850000>;
256724ba675SRob Herring				regulator-boot-on;
257724ba675SRob Herring				regulator-always-on;
258724ba675SRob Herring			};
259724ba675SRob Herring
260724ba675SRob Herring			sw4_reg: sw4 {
261724ba675SRob Herring				regulator-min-microvolt = <1100000>;
262724ba675SRob Herring				regulator-max-microvolt = <1850000>;
263724ba675SRob Herring				regulator-boot-on;
264724ba675SRob Herring				regulator-always-on;
265724ba675SRob Herring			};
266724ba675SRob Herring
267724ba675SRob Herring			vpll_reg: vpll {
268724ba675SRob Herring				regulator-min-microvolt = <1050000>;
269724ba675SRob Herring				regulator-max-microvolt = <1800000>;
270724ba675SRob Herring				regulator-boot-on;
271724ba675SRob Herring				regulator-always-on;
272724ba675SRob Herring			};
273724ba675SRob Herring
274724ba675SRob Herring			vdig_reg: vdig {
275724ba675SRob Herring				regulator-min-microvolt = <1650000>;
276724ba675SRob Herring				regulator-max-microvolt = <1650000>;
277724ba675SRob Herring				regulator-boot-on;
278724ba675SRob Herring			};
279724ba675SRob Herring
280724ba675SRob Herring			vsd_reg: vsd {
281724ba675SRob Herring				regulator-min-microvolt = <1800000>;
282724ba675SRob Herring				regulator-max-microvolt = <3150000>;
283724ba675SRob Herring			};
284724ba675SRob Herring
285724ba675SRob Herring			vusb_reg: vusb {
286724ba675SRob Herring				regulator-boot-on;
287724ba675SRob Herring			};
288724ba675SRob Herring
289724ba675SRob Herring			vusb2_reg: vusb2 {
290724ba675SRob Herring				regulator-min-microvolt = <2400000>;
291724ba675SRob Herring				regulator-max-microvolt = <2775000>;
292724ba675SRob Herring				regulator-boot-on;
293724ba675SRob Herring				regulator-always-on;
294724ba675SRob Herring			};
295724ba675SRob Herring
296724ba675SRob Herring			vvideo_reg: vvideo {
297724ba675SRob Herring				regulator-min-microvolt = <2775000>;
298724ba675SRob Herring				regulator-max-microvolt = <2775000>;
299724ba675SRob Herring			};
300724ba675SRob Herring
301724ba675SRob Herring			vaudio_reg: vaudio {
302724ba675SRob Herring				regulator-min-microvolt = <2300000>;
303724ba675SRob Herring				regulator-max-microvolt = <3000000>;
304724ba675SRob Herring			};
305724ba675SRob Herring
306724ba675SRob Herring			vcam_reg: vcam {
307724ba675SRob Herring				regulator-min-microvolt = <2500000>;
308724ba675SRob Herring				regulator-max-microvolt = <3000000>;
309724ba675SRob Herring			};
310724ba675SRob Herring
311724ba675SRob Herring			vgen1_reg: vgen1 {
312724ba675SRob Herring				regulator-min-microvolt = <1200000>;
313724ba675SRob Herring				regulator-max-microvolt = <1200000>;
314724ba675SRob Herring			};
315724ba675SRob Herring
316724ba675SRob Herring			vgen2_reg: vgen2 {
317724ba675SRob Herring				regulator-min-microvolt = <1200000>;
318724ba675SRob Herring				regulator-max-microvolt = <3150000>;
319724ba675SRob Herring				regulator-always-on;
320724ba675SRob Herring			};
321724ba675SRob Herring
322724ba675SRob Herring			vgen3_reg: vgen3 {
323724ba675SRob Herring				regulator-min-microvolt = <1800000>;
324724ba675SRob Herring				regulator-max-microvolt = <2900000>;
325724ba675SRob Herring				regulator-always-on;
326724ba675SRob Herring			};
327724ba675SRob Herring		};
328724ba675SRob Herring	};
329724ba675SRob Herring
330724ba675SRob Herring	flash: at45db321d@1 {
331724ba675SRob Herring		#address-cells = <1>;
332724ba675SRob Herring		#size-cells = <1>;
333724ba675SRob Herring		compatible = "atmel,at45db321d", "atmel,at45", "atmel,dataflash";
334724ba675SRob Herring		spi-max-frequency = <25000000>;
335724ba675SRob Herring		reg = <1>;
336724ba675SRob Herring
337724ba675SRob Herring		partition@0 {
338724ba675SRob Herring			label = "U-Boot";
339724ba675SRob Herring			reg = <0x0 0x40000>;
340724ba675SRob Herring			read-only;
341724ba675SRob Herring		};
342724ba675SRob Herring
343724ba675SRob Herring		partition@40000 {
344724ba675SRob Herring			label = "Kernel";
345724ba675SRob Herring			reg = <0x40000 0x3c0000>;
346724ba675SRob Herring		};
347724ba675SRob Herring	};
348724ba675SRob Herring};
349724ba675SRob Herring
350724ba675SRob Herring&esdhc1 {
351724ba675SRob Herring	pinctrl-names = "default";
352724ba675SRob Herring	pinctrl-0 = <&pinctrl_esdhc1>;
353724ba675SRob Herring	cd-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
354724ba675SRob Herring	wp-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>;
355724ba675SRob Herring	status = "okay";
356724ba675SRob Herring};
357724ba675SRob Herring
358724ba675SRob Herring&esdhc2 {
359724ba675SRob Herring	pinctrl-names = "default";
360724ba675SRob Herring	pinctrl-0 = <&pinctrl_esdhc2>;
361724ba675SRob Herring	cd-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
362724ba675SRob Herring	wp-gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
363724ba675SRob Herring	status = "okay";
364724ba675SRob Herring};
365724ba675SRob Herring
366724ba675SRob Herring&fec {
367724ba675SRob Herring	pinctrl-names = "default";
368724ba675SRob Herring	pinctrl-0 = <&pinctrl_fec>;
369724ba675SRob Herring	phy-mode = "mii";
370724ba675SRob Herring	phy-reset-gpios = <&gpio2 14 GPIO_ACTIVE_LOW>;
371724ba675SRob Herring	phy-reset-duration = <1>;
372724ba675SRob Herring	status = "okay";
373724ba675SRob Herring};
374724ba675SRob Herring
375724ba675SRob Herring&i2c1 {
376724ba675SRob Herring	pinctrl-names = "default";
377724ba675SRob Herring	pinctrl-0 = <&pinctrl_i2c1>;
378724ba675SRob Herring	status = "okay";
379724ba675SRob Herring};
380724ba675SRob Herring
381724ba675SRob Herring&i2c2 {
382724ba675SRob Herring	pinctrl-names = "default";
383724ba675SRob Herring	pinctrl-0 = <&pinctrl_i2c2>;
384724ba675SRob Herring	status = "okay";
385724ba675SRob Herring
386724ba675SRob Herring	sgtl5000: codec@a {
387724ba675SRob Herring		compatible = "fsl,sgtl5000";
388724ba675SRob Herring		reg = <0x0a>;
389724ba675SRob Herring		#sound-dai-cells = <0>;
390724ba675SRob Herring		clocks = <&clk_audio>;
391724ba675SRob Herring		VDDA-supply = <&vdig_reg>;
392724ba675SRob Herring		VDDIO-supply = <&vvideo_reg>;
393724ba675SRob Herring	};
394724ba675SRob Herring};
395724ba675SRob Herring
396724ba675SRob Herring&ipu_di0_disp1 {
397724ba675SRob Herring	remote-endpoint = <&display0_in>;
398724ba675SRob Herring};
399724ba675SRob Herring
400724ba675SRob Herring&ipu_di1_disp2 {
401724ba675SRob Herring	remote-endpoint = <&display1_in>;
402724ba675SRob Herring};
403724ba675SRob Herring
404724ba675SRob Herring&kpp {
405724ba675SRob Herring	pinctrl-names = "default";
406724ba675SRob Herring	pinctrl-0 = <&pinctrl_kpp>;
407724ba675SRob Herring	linux,keymap = <
408724ba675SRob Herring		MATRIX_KEY(0, 0, KEY_UP)
409724ba675SRob Herring		MATRIX_KEY(0, 1, KEY_DOWN)
410724ba675SRob Herring		MATRIX_KEY(0, 2, KEY_VOLUMEDOWN)
411724ba675SRob Herring		MATRIX_KEY(0, 3, KEY_HOME)
412724ba675SRob Herring		MATRIX_KEY(1, 0, KEY_RIGHT)
413724ba675SRob Herring		MATRIX_KEY(1, 1, KEY_LEFT)
414724ba675SRob Herring		MATRIX_KEY(1, 2, KEY_ENTER)
415724ba675SRob Herring		MATRIX_KEY(1, 3, KEY_VOLUMEUP)
416724ba675SRob Herring		MATRIX_KEY(2, 0, KEY_F6)
417724ba675SRob Herring		MATRIX_KEY(2, 1, KEY_F8)
418724ba675SRob Herring		MATRIX_KEY(2, 2, KEY_F9)
419724ba675SRob Herring		MATRIX_KEY(2, 3, KEY_F10)
420724ba675SRob Herring		MATRIX_KEY(3, 0, KEY_F1)
421724ba675SRob Herring		MATRIX_KEY(3, 1, KEY_F2)
422724ba675SRob Herring		MATRIX_KEY(3, 2, KEY_F3)
423724ba675SRob Herring		MATRIX_KEY(3, 3, KEY_POWER)
424724ba675SRob Herring	>;
425724ba675SRob Herring	status = "okay";
426724ba675SRob Herring};
427724ba675SRob Herring
428724ba675SRob Herring&pmu {
429724ba675SRob Herring	secure-reg-access;
430724ba675SRob Herring};
431724ba675SRob Herring
432724ba675SRob Herring&ssi2 {
433724ba675SRob Herring	status = "okay";
434724ba675SRob Herring};
435724ba675SRob Herring
436724ba675SRob Herring&uart1 {
437724ba675SRob Herring	pinctrl-names = "default";
438724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart1>;
439724ba675SRob Herring	uart-has-rtscts;
440724ba675SRob Herring	status = "okay";
441724ba675SRob Herring};
442724ba675SRob Herring
443724ba675SRob Herring&uart2 {
444724ba675SRob Herring	pinctrl-names = "default";
445724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart2>;
446724ba675SRob Herring	status = "okay";
447724ba675SRob Herring};
448724ba675SRob Herring
449724ba675SRob Herring&uart3 {
450724ba675SRob Herring	pinctrl-names = "default";
451724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart3>;
452724ba675SRob Herring	uart-has-rtscts;
453724ba675SRob Herring	status = "okay";
454724ba675SRob Herring};
455724ba675SRob Herring
456724ba675SRob Herring&usbh1 {
457724ba675SRob Herring	pinctrl-names = "default";
458724ba675SRob Herring	pinctrl-0 = <&pinctrl_usbh1>;
459724ba675SRob Herring	vbus-supply = <&reg_hub_reset>;
460724ba675SRob Herring	fsl,usbphy = <&usbphy1>;
461724ba675SRob Herring	phy_type = "ulpi";
462724ba675SRob Herring	status = "okay";
463724ba675SRob Herring};
464724ba675SRob Herring
465724ba675SRob Herring&usbphy0 {
466724ba675SRob Herring	vcc-supply = <&vusb_reg>;
467724ba675SRob Herring};
468724ba675SRob Herring
469724ba675SRob Herring&usbotg {
470724ba675SRob Herring	dr_mode = "otg";
471724ba675SRob Herring	disable-over-current;
472724ba675SRob Herring	phy_type = "utmi_wide";
473724ba675SRob Herring	status = "okay";
474724ba675SRob Herring};
475724ba675SRob Herring
476724ba675SRob Herring&iomuxc {
477724ba675SRob Herring	imx51-babbage {
478724ba675SRob Herring		pinctrl_audmux: audmuxgrp {
479724ba675SRob Herring			fsl,pins = <
480724ba675SRob Herring				MX51_PAD_AUD3_BB_TXD__AUD3_TXD		0x80000000
481724ba675SRob Herring				MX51_PAD_AUD3_BB_RXD__AUD3_RXD		0x80000000
482724ba675SRob Herring				MX51_PAD_AUD3_BB_CK__AUD3_TXC		0x80000000
483724ba675SRob Herring				MX51_PAD_AUD3_BB_FS__AUD3_TXFS		0x80000000
484724ba675SRob Herring			>;
485724ba675SRob Herring		};
486724ba675SRob Herring
487724ba675SRob Herring		pinctrl_clk26mhz_audio: clk26mhzaudiocgrp {
488724ba675SRob Herring			fsl,pins = <
489724ba675SRob Herring				MX51_PAD_CSPI1_RDY__GPIO4_26		0x85
490724ba675SRob Herring			>;
491724ba675SRob Herring		};
492724ba675SRob Herring
493724ba675SRob Herring		pinctrl_clk26mhz_osc: clk26mhzoscgrp {
494724ba675SRob Herring			fsl,pins = <
495724ba675SRob Herring				MX51_PAD_DI1_PIN12__GPIO3_1		0x85
496724ba675SRob Herring			>;
497724ba675SRob Herring		};
498724ba675SRob Herring
499724ba675SRob Herring		pinctrl_clk26mhz_usb: clk26mhzusbgrp {
500724ba675SRob Herring			fsl,pins = <
501724ba675SRob Herring				MX51_PAD_EIM_D17__GPIO2_1		0x85
502724ba675SRob Herring			>;
503724ba675SRob Herring		};
504724ba675SRob Herring
505724ba675SRob Herring		pinctrl_ecspi1: ecspi1grp {
506724ba675SRob Herring			fsl,pins = <
507724ba675SRob Herring				MX51_PAD_CSPI1_MISO__ECSPI1_MISO	0x185
508724ba675SRob Herring				MX51_PAD_CSPI1_MOSI__ECSPI1_MOSI	0x185
509724ba675SRob Herring				MX51_PAD_CSPI1_SCLK__ECSPI1_SCLK	0x185
510724ba675SRob Herring				MX51_PAD_CSPI1_SS0__GPIO4_24		0x85 /* CS0 */
511724ba675SRob Herring				MX51_PAD_CSPI1_SS1__GPIO4_25		0x85 /* CS1 */
512724ba675SRob Herring			>;
513724ba675SRob Herring		};
514724ba675SRob Herring
515724ba675SRob Herring		pinctrl_esdhc1: esdhc1grp {
516724ba675SRob Herring			fsl,pins = <
517724ba675SRob Herring				MX51_PAD_SD1_CMD__SD1_CMD		0x400020d5
518724ba675SRob Herring				MX51_PAD_SD1_CLK__SD1_CLK		0x20d5
519724ba675SRob Herring				MX51_PAD_SD1_DATA0__SD1_DATA0		0x20d5
520724ba675SRob Herring				MX51_PAD_SD1_DATA1__SD1_DATA1		0x20d5
521724ba675SRob Herring				MX51_PAD_SD1_DATA2__SD1_DATA2		0x20d5
522724ba675SRob Herring				MX51_PAD_SD1_DATA3__SD1_DATA3		0x20d5
523724ba675SRob Herring				MX51_PAD_GPIO1_0__GPIO1_0		0x100
524724ba675SRob Herring				MX51_PAD_GPIO1_1__GPIO1_1		0x100
525724ba675SRob Herring			>;
526724ba675SRob Herring		};
527724ba675SRob Herring
528724ba675SRob Herring		pinctrl_esdhc2: esdhc2grp {
529724ba675SRob Herring			fsl,pins = <
530724ba675SRob Herring				MX51_PAD_SD2_CMD__SD2_CMD		0x400020d5
531724ba675SRob Herring				MX51_PAD_SD2_CLK__SD2_CLK		0x20d5
532724ba675SRob Herring				MX51_PAD_SD2_DATA0__SD2_DATA0		0x20d5
533724ba675SRob Herring				MX51_PAD_SD2_DATA1__SD2_DATA1		0x20d5
534724ba675SRob Herring				MX51_PAD_SD2_DATA2__SD2_DATA2		0x20d5
535724ba675SRob Herring				MX51_PAD_SD2_DATA3__SD2_DATA3		0x20d5
536724ba675SRob Herring				MX51_PAD_GPIO1_5__GPIO1_5		0x100 /* WP */
537724ba675SRob Herring				MX51_PAD_GPIO1_6__GPIO1_6		0x100 /* CD */
538724ba675SRob Herring			>;
539724ba675SRob Herring		};
540724ba675SRob Herring
541724ba675SRob Herring		pinctrl_fec: fecgrp {
542724ba675SRob Herring			fsl,pins = <
543724ba675SRob Herring				MX51_PAD_EIM_EB2__FEC_MDIO		0x000001f5
544724ba675SRob Herring				MX51_PAD_EIM_EB3__FEC_RDATA1		0x00000085
545724ba675SRob Herring				MX51_PAD_EIM_CS2__FEC_RDATA2		0x00000085
546724ba675SRob Herring				MX51_PAD_EIM_CS3__FEC_RDATA3		0x00000085
547724ba675SRob Herring				MX51_PAD_EIM_CS4__FEC_RX_ER		0x00000180
548724ba675SRob Herring				MX51_PAD_EIM_CS5__FEC_CRS		0x00000180
549724ba675SRob Herring				MX51_PAD_NANDF_RB2__FEC_COL		0x00000180
550724ba675SRob Herring				MX51_PAD_NANDF_RB3__FEC_RX_CLK		0x00000180
551724ba675SRob Herring				MX51_PAD_NANDF_D9__FEC_RDATA0		0x00002180
552724ba675SRob Herring				MX51_PAD_NANDF_D8__FEC_TDATA0		0x00002004
553724ba675SRob Herring				MX51_PAD_NANDF_CS2__FEC_TX_ER		0x00002004
554724ba675SRob Herring				MX51_PAD_NANDF_CS3__FEC_MDC		0x00002004
555724ba675SRob Herring				MX51_PAD_NANDF_CS4__FEC_TDATA1		0x00002004
556724ba675SRob Herring				MX51_PAD_NANDF_CS5__FEC_TDATA2		0x00002004
557724ba675SRob Herring				MX51_PAD_NANDF_CS6__FEC_TDATA3		0x00002004
558724ba675SRob Herring				MX51_PAD_NANDF_CS7__FEC_TX_EN		0x00002004
559724ba675SRob Herring				MX51_PAD_NANDF_RDY_INT__FEC_TX_CLK	0x00002180
560724ba675SRob Herring				MX51_PAD_NANDF_D11__FEC_RX_DV		0x000020a4
561724ba675SRob Herring				MX51_PAD_EIM_A20__GPIO2_14		0x00000085 /* Phy Reset */
562724ba675SRob Herring			>;
563724ba675SRob Herring		};
564724ba675SRob Herring
565724ba675SRob Herring		pinctrl_gpio_keys: gpiokeysgrp {
566724ba675SRob Herring			fsl,pins = <
567724ba675SRob Herring				MX51_PAD_EIM_A27__GPIO2_21		0x5
568724ba675SRob Herring			>;
569724ba675SRob Herring		};
570724ba675SRob Herring
571724ba675SRob Herring		pinctrl_gpio_leds: gpioledsgrp {
572724ba675SRob Herring			fsl,pins = <
573724ba675SRob Herring				MX51_PAD_EIM_D22__GPIO2_6		0x80000000
574724ba675SRob Herring			>;
575724ba675SRob Herring		};
576724ba675SRob Herring
577724ba675SRob Herring		pinctrl_i2c1: i2c1grp {
578724ba675SRob Herring			fsl,pins = <
579724ba675SRob Herring				MX51_PAD_EIM_D19__I2C1_SCL		0x400001ed
580724ba675SRob Herring				MX51_PAD_EIM_D16__I2C1_SDA		0x400001ed
581724ba675SRob Herring			>;
582724ba675SRob Herring		};
583724ba675SRob Herring
584724ba675SRob Herring		pinctrl_i2c2: i2c2grp {
585724ba675SRob Herring			fsl,pins = <
586724ba675SRob Herring				MX51_PAD_KEY_COL4__I2C2_SCL		0x400001ed
587724ba675SRob Herring				MX51_PAD_KEY_COL5__I2C2_SDA		0x400001ed
588724ba675SRob Herring			>;
589724ba675SRob Herring		};
590724ba675SRob Herring
591724ba675SRob Herring		pinctrl_ipu_disp1: ipudisp1grp {
592724ba675SRob Herring			fsl,pins = <
593724ba675SRob Herring				MX51_PAD_DISP1_DAT0__DISP1_DAT0		0x5
594724ba675SRob Herring				MX51_PAD_DISP1_DAT1__DISP1_DAT1		0x5
595724ba675SRob Herring				MX51_PAD_DISP1_DAT2__DISP1_DAT2		0x5
596724ba675SRob Herring				MX51_PAD_DISP1_DAT3__DISP1_DAT3		0x5
597724ba675SRob Herring				MX51_PAD_DISP1_DAT4__DISP1_DAT4		0x5
598724ba675SRob Herring				MX51_PAD_DISP1_DAT5__DISP1_DAT5		0x5
599724ba675SRob Herring				MX51_PAD_DISP1_DAT6__DISP1_DAT6		0x5
600724ba675SRob Herring				MX51_PAD_DISP1_DAT7__DISP1_DAT7		0x5
601724ba675SRob Herring				MX51_PAD_DISP1_DAT8__DISP1_DAT8		0x5
602724ba675SRob Herring				MX51_PAD_DISP1_DAT9__DISP1_DAT9		0x5
603724ba675SRob Herring				MX51_PAD_DISP1_DAT10__DISP1_DAT10	0x5
604724ba675SRob Herring				MX51_PAD_DISP1_DAT11__DISP1_DAT11	0x5
605724ba675SRob Herring				MX51_PAD_DISP1_DAT12__DISP1_DAT12	0x5
606724ba675SRob Herring				MX51_PAD_DISP1_DAT13__DISP1_DAT13	0x5
607724ba675SRob Herring				MX51_PAD_DISP1_DAT14__DISP1_DAT14	0x5
608724ba675SRob Herring				MX51_PAD_DISP1_DAT15__DISP1_DAT15	0x5
609724ba675SRob Herring				MX51_PAD_DISP1_DAT16__DISP1_DAT16	0x5
610724ba675SRob Herring				MX51_PAD_DISP1_DAT17__DISP1_DAT17	0x5
611724ba675SRob Herring				MX51_PAD_DISP1_DAT18__DISP1_DAT18	0x5
612724ba675SRob Herring				MX51_PAD_DISP1_DAT19__DISP1_DAT19	0x5
613724ba675SRob Herring				MX51_PAD_DISP1_DAT20__DISP1_DAT20	0x5
614724ba675SRob Herring				MX51_PAD_DISP1_DAT21__DISP1_DAT21	0x5
615724ba675SRob Herring				MX51_PAD_DISP1_DAT22__DISP1_DAT22	0x5
616724ba675SRob Herring				MX51_PAD_DISP1_DAT23__DISP1_DAT23	0x5
617724ba675SRob Herring				MX51_PAD_DI1_PIN2__DI1_PIN2		0x5
618724ba675SRob Herring				MX51_PAD_DI1_PIN3__DI1_PIN3		0x5
619724ba675SRob Herring			>;
620724ba675SRob Herring		};
621724ba675SRob Herring
622724ba675SRob Herring		pinctrl_ipu_disp2: ipudisp2grp {
623724ba675SRob Herring			fsl,pins = <
624724ba675SRob Herring				MX51_PAD_DISP2_DAT0__DISP2_DAT0		0x5
625724ba675SRob Herring				MX51_PAD_DISP2_DAT1__DISP2_DAT1		0x5
626724ba675SRob Herring				MX51_PAD_DISP2_DAT2__DISP2_DAT2		0x5
627724ba675SRob Herring				MX51_PAD_DISP2_DAT3__DISP2_DAT3		0x5
628724ba675SRob Herring				MX51_PAD_DISP2_DAT4__DISP2_DAT4		0x5
629724ba675SRob Herring				MX51_PAD_DISP2_DAT5__DISP2_DAT5		0x5
630724ba675SRob Herring				MX51_PAD_DISP2_DAT6__DISP2_DAT6		0x5
631724ba675SRob Herring				MX51_PAD_DISP2_DAT7__DISP2_DAT7		0x5
632724ba675SRob Herring				MX51_PAD_DISP2_DAT8__DISP2_DAT8		0x5
633724ba675SRob Herring				MX51_PAD_DISP2_DAT9__DISP2_DAT9		0x5
634724ba675SRob Herring				MX51_PAD_DISP2_DAT10__DISP2_DAT10	0x5
635724ba675SRob Herring				MX51_PAD_DISP2_DAT11__DISP2_DAT11	0x5
636724ba675SRob Herring				MX51_PAD_DISP2_DAT12__DISP2_DAT12	0x5
637724ba675SRob Herring				MX51_PAD_DISP2_DAT13__DISP2_DAT13	0x5
638724ba675SRob Herring				MX51_PAD_DISP2_DAT14__DISP2_DAT14	0x5
639724ba675SRob Herring				MX51_PAD_DISP2_DAT15__DISP2_DAT15	0x5
640724ba675SRob Herring				MX51_PAD_DI2_PIN2__DI2_PIN2		0x5
641724ba675SRob Herring				MX51_PAD_DI2_PIN3__DI2_PIN3		0x5
642724ba675SRob Herring				MX51_PAD_DI2_DISP_CLK__DI2_DISP_CLK	0x5
643724ba675SRob Herring				MX51_PAD_DI_GP4__DI2_PIN15		0x5
644724ba675SRob Herring			>;
645724ba675SRob Herring		};
646724ba675SRob Herring
647724ba675SRob Herring		pinctrl_kpp: kppgrp {
648724ba675SRob Herring			fsl,pins = <
649724ba675SRob Herring				MX51_PAD_KEY_ROW0__KEY_ROW0		0xe0
650724ba675SRob Herring				MX51_PAD_KEY_ROW1__KEY_ROW1		0xe0
651724ba675SRob Herring				MX51_PAD_KEY_ROW2__KEY_ROW2		0xe0
652724ba675SRob Herring				MX51_PAD_KEY_ROW3__KEY_ROW3		0xe0
653724ba675SRob Herring				MX51_PAD_KEY_COL0__KEY_COL0		0xe8
654724ba675SRob Herring				MX51_PAD_KEY_COL1__KEY_COL1		0xe8
655724ba675SRob Herring				MX51_PAD_KEY_COL2__KEY_COL2		0xe8
656724ba675SRob Herring				MX51_PAD_KEY_COL3__KEY_COL3		0xe8
657724ba675SRob Herring			>;
658724ba675SRob Herring		};
659724ba675SRob Herring
660724ba675SRob Herring		pinctrl_pmic: pmicgrp {
661724ba675SRob Herring			fsl,pins = <
662724ba675SRob Herring				MX51_PAD_GPIO1_8__GPIO1_8		0xe5 /* IRQ */
663724ba675SRob Herring			>;
664724ba675SRob Herring		};
665724ba675SRob Herring
666724ba675SRob Herring		pinctrl_uart1: uart1grp {
667724ba675SRob Herring			fsl,pins = <
668724ba675SRob Herring				MX51_PAD_UART1_RXD__UART1_RXD		0x1c5
669724ba675SRob Herring				MX51_PAD_UART1_TXD__UART1_TXD		0x1c5
670724ba675SRob Herring				MX51_PAD_UART1_RTS__UART1_RTS		0x1c5
671724ba675SRob Herring				MX51_PAD_UART1_CTS__UART1_CTS		0x1c5
672724ba675SRob Herring			>;
673724ba675SRob Herring		};
674724ba675SRob Herring
675724ba675SRob Herring		pinctrl_uart2: uart2grp {
676724ba675SRob Herring			fsl,pins = <
677724ba675SRob Herring				MX51_PAD_UART2_RXD__UART2_RXD		0x1c5
678724ba675SRob Herring				MX51_PAD_UART2_TXD__UART2_TXD		0x1c5
679724ba675SRob Herring			>;
680724ba675SRob Herring		};
681724ba675SRob Herring
682724ba675SRob Herring		pinctrl_uart3: uart3grp {
683724ba675SRob Herring			fsl,pins = <
684724ba675SRob Herring				MX51_PAD_EIM_D25__UART3_RXD		0x1c5
685724ba675SRob Herring				MX51_PAD_EIM_D26__UART3_TXD		0x1c5
686724ba675SRob Herring				MX51_PAD_EIM_D27__UART3_RTS		0x1c5
687724ba675SRob Herring				MX51_PAD_EIM_D24__UART3_CTS		0x1c5
688724ba675SRob Herring			>;
689724ba675SRob Herring		};
690724ba675SRob Herring
691724ba675SRob Herring		pinctrl_usbh1: usbh1grp {
692724ba675SRob Herring			fsl,pins = <
693724ba675SRob Herring				MX51_PAD_USBH1_CLK__USBH1_CLK		0x80000000
694724ba675SRob Herring				MX51_PAD_USBH1_DIR__USBH1_DIR		0x80000000
695724ba675SRob Herring				MX51_PAD_USBH1_NXT__USBH1_NXT		0x80000000
696724ba675SRob Herring				MX51_PAD_USBH1_DATA0__USBH1_DATA0	0x80000000
697724ba675SRob Herring				MX51_PAD_USBH1_DATA1__USBH1_DATA1	0x80000000
698724ba675SRob Herring				MX51_PAD_USBH1_DATA2__USBH1_DATA2	0x80000000
699724ba675SRob Herring				MX51_PAD_USBH1_DATA3__USBH1_DATA3	0x80000000
700724ba675SRob Herring				MX51_PAD_USBH1_DATA4__USBH1_DATA4	0x80000000
701724ba675SRob Herring				MX51_PAD_USBH1_DATA5__USBH1_DATA5	0x80000000
702724ba675SRob Herring				MX51_PAD_USBH1_DATA6__USBH1_DATA6	0x80000000
703724ba675SRob Herring				MX51_PAD_USBH1_DATA7__USBH1_DATA7	0x80000000
704724ba675SRob Herring			>;
705724ba675SRob Herring		};
706724ba675SRob Herring
707724ba675SRob Herring		pinctrl_usbh1reg: usbh1reggrp {
708724ba675SRob Herring			fsl,pins = <
709724ba675SRob Herring				MX51_PAD_EIM_D21__GPIO2_5		0x85
710724ba675SRob Herring			>;
711724ba675SRob Herring		};
712724ba675SRob Herring
713724ba675SRob Herring		pinctrl_usbotgreg: usbotgreggrp {
714724ba675SRob Herring			fsl,pins = <
715724ba675SRob Herring				MX51_PAD_GPIO1_7__GPIO1_7		0x85
716724ba675SRob Herring			>;
717724ba675SRob Herring		};
718724ba675SRob Herring	};
719724ba675SRob Herring};
720