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