1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2/*
3 * Copyright 2021
4 * Lukasz Majewski, DENX Software Engineering, lukma@denx.de
5 */
6
7/dts-v1/;
8#include "imx28.dtsi"
9
10/ {
11	aliases {
12		spi2 = &ssp3;
13	};
14
15	chosen {
16		bootargs = "root=/dev/mmcblk0p2 rootfstype=ext4 ro rootwait console=ttyAMA0,115200 panic=1";
17	};
18
19	memory@40000000 {
20		reg = <0x40000000 0x08000000>;
21	};
22
23	reg_3v3: regulator-reg-3v3 {
24		compatible = "regulator-fixed";
25		regulator-name = "3V3";
26		regulator-min-microvolt = <3300000>;
27		regulator-max-microvolt = <3300000>;
28	};
29
30	reg_usb_5v: regulator-reg-usb-5v {
31		compatible = "regulator-fixed";
32		regulator-name = "usb_vbus";
33		regulator-min-microvolt = <5000000>;
34		regulator-max-microvolt = <5000000>;
35	};
36
37	reg_fec_3v3: regulator-reg-fec-3v3 {
38		compatible = "regulator-fixed";
39		regulator-name = "fec-phy";
40		regulator-min-microvolt = <3300000>;
41		regulator-max-microvolt = <3300000>;
42	};
43};
44
45&duart {
46	pinctrl-names = "default";
47	pinctrl-0 = <&duart_pins_a>;
48	status = "okay";
49};
50
51&i2c0 {
52	pinctrl-names = "default";
53	pinctrl-0 = <&i2c0_pins_a>;
54	status = "okay";
55};
56
57&saif0 {
58	pinctrl-names = "default";
59	pinctrl-0 = <&saif0_pins_a>;
60	#sound-dai-cells = <0>;
61	assigned-clocks = <&clks 53>;
62	assigned-clock-rates = <12000000>;
63	status = "okay";
64};
65
66&saif1 {
67	pinctrl-names = "default";
68	pinctrl-0 = <&saif1_pins_a>;
69	fsl,saif-master = <&saif0>;
70	#sound-dai-cells = <0>;
71	status = "okay";
72};
73
74&spi3_pins_a {
75	fsl,pinmux-ids = <
76		MX28_PAD_AUART2_RX__SSP3_D4
77		MX28_PAD_AUART2_TX__SSP3_D5
78		MX28_PAD_SSP3_SCK__SSP3_SCK
79		MX28_PAD_SSP3_MOSI__SSP3_CMD
80		MX28_PAD_SSP3_MISO__SSP3_D0
81		MX28_PAD_SSP3_SS0__SSP3_D3
82		MX28_PAD_AUART2_TX__GPIO_3_9
83	>;
84};
85
86&ssp0 {
87	compatible = "fsl,imx28-mmc";
88	pinctrl-names = "default";
89	pinctrl-0 = <&mmc0_8bit_pins_a>;
90	bus-width = <8>;
91	vmmc-supply = <&reg_3v3>;
92	non-removable;
93	status = "okay";
94};
95
96&ssp2 {
97	compatible = "fsl,imx28-spi";
98	pinctrl-names = "default";
99	pinctrl-0 = <&spi2_pins_a>;
100	status = "okay";
101};
102
103&ssp3 {
104	compatible = "fsl,imx28-spi";
105	pinctrl-names = "default";
106	pinctrl-0 = <&spi3_pins_a>;
107	status = "okay";
108
109	flash@0 {
110		compatible = "jedec,spi-nor";
111		spi-max-frequency = <40000000>;
112		reg = <0>;
113
114		partitions {
115			compatible = "fixed-partitions";
116			#address-cells = <1>;
117			#size-cells = <1>;
118
119			partition@0 {
120				label = "u-boot";
121				reg = <0 0x80000>;
122				read-only;
123			};
124
125			partition@80000 {
126				label = "env0";
127				reg = <0x80000 0x10000>;
128			};
129
130			partition@90000 {
131				label = "env1";
132				reg = <0x90000 0x10000>;
133			};
134
135			partition@100000 {
136				label = "kernel";
137				reg = <0x100000 0x400000>;
138			};
139
140			partition@500000 {
141				label = "swupdate";
142				reg = <0x500000 0x800000>;
143			};
144		};
145	};
146};
147
148&usb0 {
149	vbus-supply = <&reg_usb_5v>;
150	pinctrl-names = "default";
151	pinctrl-0 = <&usb0_pins_b>, <&usb0_id_pins_a>;
152	dr_mode = "host";
153	status = "okay";
154};
155
156&usbphy0 {
157	status = "okay";
158};
159
160&usb1 {
161	vbus-supply = <&reg_usb_5v>;
162	pinctrl-names = "default";
163	pinctrl-0 = <&usb1_pins_b>;
164	dr_mode = "host";
165	status = "okay";
166};
167
168&usbphy1 {
169	status = "okay";
170};
171