Loading...
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Copyright (C) 2013 Marek Vasut <marex@denx.de>
4 */
5
6/dts-v1/;
7#include "imx28.dtsi"
8
9/ {
10 model = "MSR M28CU3";
11 compatible = "msr,m28cu3", "fsl,imx28";
12
13 memory@40000000 {
14 device_type = "memory";
15 reg = <0x40000000 0x08000000>;
16 };
17
18 apb@80000000 {
19 apbh@80000000 {
20 nand-controller@8000c000 {
21 #address-cells = <1>;
22 #size-cells = <1>;
23 pinctrl-names = "default";
24 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>;
25 status = "okay";
26
27 partition@0 {
28 label = "gpmi-nfc-0-boot";
29 reg = <0x00000000 0x01400000>;
30 read-only;
31 };
32
33 partition@1 {
34 label = "gpmi-nfc-general-use";
35 reg = <0x01400000 0x0ec00000>;
36 };
37 };
38
39 ssp0: spi@80010000 {
40 compatible = "fsl,imx28-mmc";
41 pinctrl-names = "default";
42 pinctrl-0 = <&mmc0_4bit_pins_a
43 &mmc0_cd_cfg
44 &mmc0_sck_cfg>;
45 bus-width = <4>;
46 vmmc-supply = <®_vddio_sd0>;
47 status = "okay";
48 };
49
50 ssp2: spi@80014000 {
51 compatible = "fsl,imx28-mmc";
52 pinctrl-names = "default";
53 pinctrl-0 = <&mmc2_4bit_pins_a
54 &mmc2_cd_cfg
55 &mmc2_sck_cfg_a>;
56 bus-width = <4>;
57 vmmc-supply = <®_vddio_sd1>;
58 status = "okay";
59 };
60
61 pinctrl@80018000 {
62 pinctrl-names = "default";
63 pinctrl-0 = <&hog_pins_a>;
64
65 hog_pins_a: hog@0 {
66 reg = <0>;
67 fsl,pinmux-ids = <
68 MX28_PAD_SSP2_SS0__GPIO_2_19
69 MX28_PAD_PWM4__GPIO_3_29
70 MX28_PAD_AUART2_RX__GPIO_3_8
71 MX28_PAD_ENET0_RX_CLK__GPIO_4_13
72 >;
73 fsl,drive-strength = <MXS_DRIVE_4mA>;
74 fsl,voltage = <MXS_VOLTAGE_HIGH>;
75 fsl,pull-up = <MXS_PULL_DISABLE>;
76 };
77
78 lcdif_pins_m28: lcdif-m28@0 {
79 reg = <0>;
80 fsl,pinmux-ids = <
81 MX28_PAD_LCD_VSYNC__LCD_VSYNC
82 MX28_PAD_LCD_HSYNC__LCD_HSYNC
83 MX28_PAD_LCD_DOTCLK__LCD_DOTCLK
84 MX28_PAD_LCD_RESET__LCD_RESET
85 MX28_PAD_LCD_CS__LCD_ENABLE
86 MX28_PAD_AUART1_TX__GPIO_3_5
87 >;
88 fsl,drive-strength = <MXS_DRIVE_4mA>;
89 fsl,voltage = <MXS_VOLTAGE_HIGH>;
90 fsl,pull-up = <MXS_PULL_DISABLE>;
91 };
92
93 led_pins_gpio: leds-m28@0 {
94 reg = <0>;
95 fsl,pinmux-ids = <
96 MX28_PAD_SSP3_MISO__GPIO_2_26
97 MX28_PAD_SSP3_SCK__GPIO_2_24
98 >;
99 fsl,drive-strength = <MXS_DRIVE_4mA>;
100 fsl,voltage = <MXS_VOLTAGE_HIGH>;
101 fsl,pull-up = <MXS_PULL_DISABLE>;
102 };
103 };
104
105 ocotp@8002c000 {
106 status = "okay";
107 };
108
109 lcdif@80030000 {
110 pinctrl-names = "default";
111 pinctrl-0 = <&lcdif_24bit_pins_a
112 &lcdif_pins_m28>;
113 display = <&display0>;
114 status = "okay";
115
116 display0: display0 {
117 bits-per-pixel = <32>;
118 bus-width = <24>;
119
120 display-timings {
121 native-mode = <&timing0>;
122 timing0: timing0 {
123 clock-frequency = <6410256>;
124 hactive = <320>;
125 vactive = <240>;
126 hback-porch = <38>;
127 hfront-porch = <20>;
128 vback-porch = <15>;
129 vfront-porch = <5>;
130 hsync-len = <30>;
131 vsync-len = <3>;
132 hsync-active = <0>;
133 vsync-active = <0>;
134 de-active = <1>;
135 pixelclk-active = <1>;
136 };
137 };
138 };
139 };
140 };
141
142 apbx@80040000 {
143 duart: serial@80074000 {
144 pinctrl-names = "default";
145 pinctrl-0 = <&duart_pins_b>;
146 status = "okay";
147 };
148
149 usbphy1: usbphy@8007e000 {
150 status = "okay";
151 };
152
153 auart0: serial@8006a000 {
154 pinctrl-names = "default";
155 pinctrl-0 = <&auart0_2pins_a>;
156 status = "okay";
157 };
158
159 auart3: serial@80070000 {
160 pinctrl-names = "default";
161 pinctrl-0 = <&auart3_2pins_b>;
162 status = "okay";
163 };
164
165 pwm: pwm@80064000 {
166 pinctrl-names = "default";
167 pinctrl-0 = <&pwm3_pins_a>;
168 status = "okay";
169 };
170 };
171 };
172
173 ahb@80080000 {
174 usb1: usb@80090000 {
175 vbus-supply = <®_usb1_vbus>;
176 pinctrl-names = "default";
177 pinctrl-0 = <&usb1_pins_a>;
178 disable-over-current;
179 status = "okay";
180 };
181
182 mac0: ethernet@800f0000 {
183 phy-mode = "rmii";
184 pinctrl-names = "default";
185 pinctrl-0 = <&mac0_pins_a>;
186 phy-reset-gpios = <&gpio4 13 GPIO_ACTIVE_LOW>;
187 phy-reset-duration = <100>;
188 status = "okay";
189 };
190
191 mac1: ethernet@800f4000 {
192 phy-mode = "rmii";
193 pinctrl-names = "default";
194 pinctrl-0 = <&mac1_pins_a>;
195 status = "okay";
196 };
197 };
198
199 backlight {
200 compatible = "pwm-backlight";
201 pwms = <&pwm 3 5000000>;
202 brightness-levels = <0 4 8 16 32 64 128 255>;
203 default-brightness-level = <6>;
204 };
205
206 leds {
207 compatible = "gpio-leds";
208 pinctrl-names = "default";
209 pinctrl-0 = <&led_pins_gpio>;
210
211 user1 {
212 label = "sd0-led";
213 gpios = <&gpio2 26 0>;
214 linux,default-trigger = "mmc0";
215 };
216
217 user2 {
218 label = "sd1-led";
219 gpios = <&gpio2 24 0>;
220 linux,default-trigger = "mmc2";
221 };
222 };
223
224 regulators {
225 compatible = "simple-bus";
226 #address-cells = <1>;
227 #size-cells = <0>;
228
229 reg_3p3v: regulator@0 {
230 compatible = "regulator-fixed";
231 reg = <0>;
232 regulator-name = "3P3V";
233 regulator-min-microvolt = <3300000>;
234 regulator-max-microvolt = <3300000>;
235 regulator-always-on;
236 };
237
238 reg_vddio_sd0: regulator@1 {
239 compatible = "regulator-fixed";
240 reg = <1>;
241 regulator-name = "vddio-sd0";
242 regulator-min-microvolt = <3300000>;
243 regulator-max-microvolt = <3300000>;
244 gpio = <&gpio3 29 0>;
245 };
246
247 reg_vddio_sd1: regulator@2 {
248 compatible = "regulator-fixed";
249 reg = <2>;
250 regulator-name = "vddio-sd1";
251 regulator-min-microvolt = <3300000>;
252 regulator-max-microvolt = <3300000>;
253 gpio = <&gpio2 19 0>;
254 };
255
256 reg_usb1_vbus: regulator@3 {
257 compatible = "regulator-fixed";
258 reg = <3>;
259 regulator-name = "usb1_vbus";
260 regulator-min-microvolt = <5000000>;
261 regulator-max-microvolt = <5000000>;
262 gpio = <&gpio3 8 0>;
263 enable-active-high;
264 };
265 };
266};
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Copyright (C) 2013 Marek Vasut <marex@denx.de>
4 */
5
6/dts-v1/;
7#include "imx28.dtsi"
8
9/ {
10 model = "MSR M28CU3";
11 compatible = "msr,m28cu3", "fsl,imx28";
12
13 memory@40000000 {
14 device_type = "memory";
15 reg = <0x40000000 0x08000000>;
16 };
17
18 apb@80000000 {
19 apbh@80000000 {
20 nand-controller@8000c000 {
21 #address-cells = <1>;
22 #size-cells = <1>;
23 pinctrl-names = "default";
24 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>;
25 status = "okay";
26
27 partition@0 {
28 label = "gpmi-nfc-0-boot";
29 reg = <0x00000000 0x01400000>;
30 read-only;
31 };
32
33 partition@1 {
34 label = "gpmi-nfc-general-use";
35 reg = <0x01400000 0x0ec00000>;
36 };
37 };
38
39 ssp0: spi@80010000 {
40 compatible = "fsl,imx28-mmc";
41 pinctrl-names = "default";
42 pinctrl-0 = <&mmc0_4bit_pins_a
43 &mmc0_cd_cfg
44 &mmc0_sck_cfg>;
45 bus-width = <4>;
46 vmmc-supply = <®_vddio_sd0>;
47 status = "okay";
48 };
49
50 ssp2: spi@80014000 {
51 compatible = "fsl,imx28-mmc";
52 pinctrl-names = "default";
53 pinctrl-0 = <&mmc2_4bit_pins_a
54 &mmc2_cd_cfg
55 &mmc2_sck_cfg_a>;
56 bus-width = <4>;
57 vmmc-supply = <®_vddio_sd1>;
58 status = "okay";
59 };
60
61 pinctrl@80018000 {
62 pinctrl-names = "default";
63 pinctrl-0 = <&hog_pins_a>;
64
65 hog_pins_a: hog@0 {
66 reg = <0>;
67 fsl,pinmux-ids = <
68 MX28_PAD_SSP2_SS0__GPIO_2_19
69 MX28_PAD_PWM4__GPIO_3_29
70 MX28_PAD_AUART2_RX__GPIO_3_8
71 MX28_PAD_ENET0_RX_CLK__GPIO_4_13
72 >;
73 fsl,drive-strength = <MXS_DRIVE_4mA>;
74 fsl,voltage = <MXS_VOLTAGE_HIGH>;
75 fsl,pull-up = <MXS_PULL_DISABLE>;
76 };
77
78 lcdif_pins_m28: lcdif-m28@0 {
79 reg = <0>;
80 fsl,pinmux-ids = <
81 MX28_PAD_LCD_VSYNC__LCD_VSYNC
82 MX28_PAD_LCD_HSYNC__LCD_HSYNC
83 MX28_PAD_LCD_DOTCLK__LCD_DOTCLK
84 MX28_PAD_LCD_RESET__LCD_RESET
85 MX28_PAD_LCD_CS__LCD_ENABLE
86 MX28_PAD_AUART1_TX__GPIO_3_5
87 >;
88 fsl,drive-strength = <MXS_DRIVE_4mA>;
89 fsl,voltage = <MXS_VOLTAGE_HIGH>;
90 fsl,pull-up = <MXS_PULL_DISABLE>;
91 };
92
93 led_pins_gpio: leds-m28@0 {
94 reg = <0>;
95 fsl,pinmux-ids = <
96 MX28_PAD_SSP3_MISO__GPIO_2_26
97 MX28_PAD_SSP3_SCK__GPIO_2_24
98 >;
99 fsl,drive-strength = <MXS_DRIVE_4mA>;
100 fsl,voltage = <MXS_VOLTAGE_HIGH>;
101 fsl,pull-up = <MXS_PULL_DISABLE>;
102 };
103 };
104
105 ocotp@8002c000 {
106 status = "okay";
107 };
108
109 lcdif@80030000 {
110 pinctrl-names = "default";
111 pinctrl-0 = <&lcdif_24bit_pins_a
112 &lcdif_pins_m28>;
113 display = <&display0>;
114 status = "okay";
115
116 display0: display0 {
117 bits-per-pixel = <32>;
118 bus-width = <24>;
119
120 display-timings {
121 native-mode = <&timing0>;
122 timing0: timing0 {
123 clock-frequency = <6410256>;
124 hactive = <320>;
125 vactive = <240>;
126 hback-porch = <38>;
127 hfront-porch = <20>;
128 vback-porch = <15>;
129 vfront-porch = <5>;
130 hsync-len = <30>;
131 vsync-len = <3>;
132 hsync-active = <0>;
133 vsync-active = <0>;
134 de-active = <1>;
135 pixelclk-active = <1>;
136 };
137 };
138 };
139 };
140 };
141
142 apbx@80040000 {
143 duart: serial@80074000 {
144 pinctrl-names = "default";
145 pinctrl-0 = <&duart_pins_b>;
146 status = "okay";
147 };
148
149 usbphy1: usbphy@8007e000 {
150 status = "okay";
151 };
152
153 auart0: serial@8006a000 {
154 pinctrl-names = "default";
155 pinctrl-0 = <&auart0_2pins_a>;
156 status = "okay";
157 };
158
159 auart3: serial@80070000 {
160 pinctrl-names = "default";
161 pinctrl-0 = <&auart3_2pins_b>;
162 status = "okay";
163 };
164
165 pwm: pwm@80064000 {
166 pinctrl-names = "default";
167 pinctrl-0 = <&pwm3_pins_a>;
168 status = "okay";
169 };
170 };
171 };
172
173 ahb@80080000 {
174 usb1: usb@80090000 {
175 vbus-supply = <®_usb1_vbus>;
176 pinctrl-names = "default";
177 pinctrl-0 = <&usb1_pins_a>;
178 disable-over-current;
179 status = "okay";
180 };
181
182 mac0: ethernet@800f0000 {
183 phy-mode = "rmii";
184 pinctrl-names = "default";
185 pinctrl-0 = <&mac0_pins_a>;
186 phy-reset-gpios = <&gpio4 13 GPIO_ACTIVE_LOW>;
187 phy-reset-duration = <100>;
188 status = "okay";
189 };
190
191 mac1: ethernet@800f4000 {
192 phy-mode = "rmii";
193 pinctrl-names = "default";
194 pinctrl-0 = <&mac1_pins_a>;
195 status = "okay";
196 };
197 };
198
199 backlight {
200 compatible = "pwm-backlight";
201 pwms = <&pwm 3 5000000>;
202 brightness-levels = <0 4 8 16 32 64 128 255>;
203 default-brightness-level = <6>;
204 };
205
206 leds {
207 compatible = "gpio-leds";
208 pinctrl-names = "default";
209 pinctrl-0 = <&led_pins_gpio>;
210
211 user1 {
212 label = "sd0-led";
213 gpios = <&gpio2 26 0>;
214 linux,default-trigger = "mmc0";
215 };
216
217 user2 {
218 label = "sd1-led";
219 gpios = <&gpio2 24 0>;
220 linux,default-trigger = "mmc2";
221 };
222 };
223
224 regulators {
225 compatible = "simple-bus";
226 #address-cells = <1>;
227 #size-cells = <0>;
228
229 reg_3p3v: regulator@0 {
230 compatible = "regulator-fixed";
231 reg = <0>;
232 regulator-name = "3P3V";
233 regulator-min-microvolt = <3300000>;
234 regulator-max-microvolt = <3300000>;
235 regulator-always-on;
236 };
237
238 reg_vddio_sd0: regulator@1 {
239 compatible = "regulator-fixed";
240 reg = <1>;
241 regulator-name = "vddio-sd0";
242 regulator-min-microvolt = <3300000>;
243 regulator-max-microvolt = <3300000>;
244 gpio = <&gpio3 29 0>;
245 };
246
247 reg_vddio_sd1: regulator@2 {
248 compatible = "regulator-fixed";
249 reg = <2>;
250 regulator-name = "vddio-sd1";
251 regulator-min-microvolt = <3300000>;
252 regulator-max-microvolt = <3300000>;
253 gpio = <&gpio2 19 0>;
254 };
255
256 reg_usb1_vbus: regulator@3 {
257 compatible = "regulator-fixed";
258 reg = <3>;
259 regulator-name = "usb1_vbus";
260 regulator-min-microvolt = <5000000>;
261 regulator-max-microvolt = <5000000>;
262 gpio = <&gpio3 8 0>;
263 enable-active-high;
264 };
265 };
266};