Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / imx28-evk.dts
1 /*
2  * Copyright 2012 Freescale Semiconductor, Inc.
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 = "Freescale i.MX28 Evaluation Kit";
17         compatible = "fsl,imx28-evk", "fsl,imx28";
18
19         memory {
20                 reg = <0x40000000 0x08000000>;
21         };
22
23         apb@80000000 {
24                 apbh@80000000 {
25                         gpmi-nand@8000c000 {
26                                 pinctrl-names = "default";
27                                 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg
28                                              &gpmi_pins_evk>;
29                                 status = "okay";
30                         };
31
32                         ssp0: ssp@80010000 {
33                                 compatible = "fsl,imx28-mmc";
34                                 pinctrl-names = "default";
35                                 pinctrl-0 = <&mmc0_8bit_pins_a
36                                         &mmc0_cd_cfg &mmc0_sck_cfg>;
37                                 bus-width = <8>;
38                                 wp-gpios = <&gpio2 12 0>;
39                                 vmmc-supply = <&reg_vddio_sd0>;
40                                 status = "okay";
41                         };
42
43                         ssp1: ssp@80012000 {
44                                 compatible = "fsl,imx28-mmc";
45                                 bus-width = <8>;
46                                 wp-gpios = <&gpio0 28 0>;
47                         };
48
49                         pinctrl@80018000 {
50                                 pinctrl-names = "default";
51                                 pinctrl-0 = <&hog_pins_a>;
52
53                                 hog_pins_a: hog-gpios@0 {
54                                         reg = <0>;
55                                         fsl,pinmux-ids = <
56                                                 0x20d3 /* MX28_PAD_SSP1_CMD__GPIO_2_13 */
57                                                 0x20f3 /* MX28_PAD_SSP1_DATA3__GPIO_2_15 */
58                                                 0x40d3 /* MX28_PAD_ENET0_RX_CLK__GPIO_4_13 */
59                                                 0x20c3 /* MX28_PAD_SSP1_SCK__GPIO_2_12 */
60                                                 0x31c3 /* MX28_PAD_PWM3__GPIO_3_28 */
61                                                 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */
62                                                 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */
63                                                 0x3083 /* MX28_PAD_AUART2_RX__GPIO_3_8 */
64                                                 0x3093 /* MX28_PAD_AUART2_TX__GPIO_3_9 */
65                                         >;
66                                         fsl,drive-strength = <0>;
67                                         fsl,voltage = <1>;
68                                         fsl,pull-up = <0>;
69                                 };
70
71                                 gpmi_pins_evk: gpmi-nand-evk@0 {
72                                         reg = <0>;
73                                         fsl,pinmux-ids = <
74                                                 0x0110 /* MX28_PAD_GPMI_CE1N__GPMI_CE1N */
75                                                 0x0150 /* MX28_PAD_GPMI_RDY1__GPMI_READY1 */
76                                         >;
77                                         fsl,drive-strength = <0>;
78                                         fsl,voltage = <1>;
79                                         fsl,pull-up = <0>;
80                                 };
81
82                                 lcdif_pins_evk: lcdif-evk@0 {
83                                         reg = <0>;
84                                         fsl,pinmux-ids = <
85                                                 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */
86                                                 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */
87                                                 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */
88                                                 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */
89                                         >;
90                                         fsl,drive-strength = <0>;
91                                         fsl,voltage = <1>;
92                                         fsl,pull-up = <0>;
93                                 };
94                         };
95
96                         lcdif@80030000 {
97                                 pinctrl-names = "default";
98                                 pinctrl-0 = <&lcdif_24bit_pins_a
99                                              &lcdif_pins_evk>;
100                                 panel-enable-gpios = <&gpio3 30 0>;
101                                 status = "okay";
102                         };
103
104                         can0: can@80032000 {
105                                 pinctrl-names = "default";
106                                 pinctrl-0 = <&can0_pins_a>;
107                                 status = "okay";
108                         };
109
110                         can1: can@80034000 {
111                                 pinctrl-names = "default";
112                                 pinctrl-0 = <&can1_pins_a>;
113                                 status = "okay";
114                         };
115                 };
116
117                 apbx@80040000 {
118                         saif0: saif@80042000 {
119                                 pinctrl-names = "default";
120                                 pinctrl-0 = <&saif0_pins_a>;
121                                 status = "okay";
122                         };
123
124                         saif1: saif@80046000 {
125                                 pinctrl-names = "default";
126                                 pinctrl-0 = <&saif1_pins_a>;
127                                 fsl,saif-master = <&saif0>;
128                                 status = "okay";
129                         };
130
131                         i2c0: i2c@80058000 {
132                                 pinctrl-names = "default";
133                                 pinctrl-0 = <&i2c0_pins_a>;
134                                 status = "okay";
135
136                                 sgtl5000: codec@0a {
137                                         compatible = "fsl,sgtl5000";
138                                         reg = <0x0a>;
139                                         VDDA-supply = <&reg_3p3v>;
140                                         VDDIO-supply = <&reg_3p3v>;
141
142                                 };
143                         };
144
145                         pwm: pwm@80064000 {
146                                 pinctrl-names = "default";
147                                 pinctrl-0 = <&pwm2_pins_a>;
148                                 status = "okay";
149                         };
150
151                         duart: serial@80074000 {
152                                 pinctrl-names = "default";
153                                 pinctrl-0 = <&duart_pins_a>;
154                                 status = "okay";
155                         };
156
157                         auart0: serial@8006a000 {
158                                 pinctrl-names = "default";
159                                 pinctrl-0 = <&auart0_pins_a>;
160                                 status = "okay";
161                         };
162
163                         auart3: serial@80070000 {
164                                 pinctrl-names = "default";
165                                 pinctrl-0 = <&auart3_pins_a>;
166                                 status = "okay";
167                         };
168
169                         usbphy0: usbphy@8007c000 {
170                                 status = "okay";
171                         };
172
173                         usbphy1: usbphy@8007e000 {
174                                 status = "okay";
175                         };
176                 };
177         };
178
179         ahb@80080000 {
180                 usb0: usb@80080000 {
181                         vbus-supply = <&reg_usb0_vbus>;
182                         status = "okay";
183                 };
184
185                 usb1: usb@80090000 {
186                         vbus-supply = <&reg_usb1_vbus>;
187                         status = "okay";
188                 };
189
190                 mac0: ethernet@800f0000 {
191                         phy-mode = "rmii";
192                         pinctrl-names = "default";
193                         pinctrl-0 = <&mac0_pins_a>;
194                         phy-supply = <&reg_fec_3v3>;
195                         phy-reset-gpios = <&gpio4 13 0>;
196                         phy-reset-duration = <100>;
197                         status = "okay";
198                 };
199
200                 mac1: ethernet@800f4000 {
201                         phy-mode = "rmii";
202                         pinctrl-names = "default";
203                         pinctrl-0 = <&mac1_pins_a>;
204                         status = "okay";
205                 };
206         };
207
208         regulators {
209                 compatible = "simple-bus";
210
211                 reg_3p3v: 3p3v {
212                         compatible = "regulator-fixed";
213                         regulator-name = "3P3V";
214                         regulator-min-microvolt = <3300000>;
215                         regulator-max-microvolt = <3300000>;
216                         regulator-always-on;
217                 };
218
219                 reg_vddio_sd0: vddio-sd0 {
220                         compatible = "regulator-fixed";
221                         regulator-name = "vddio-sd0";
222                         regulator-min-microvolt = <3300000>;
223                         regulator-max-microvolt = <3300000>;
224                         gpio = <&gpio3 28 0>;
225                 };
226
227                 reg_fec_3v3: fec-3v3 {
228                         compatible = "regulator-fixed";
229                         regulator-name = "fec-3v3";
230                         regulator-min-microvolt = <3300000>;
231                         regulator-max-microvolt = <3300000>;
232                         gpio = <&gpio2 15 0>;
233                 };
234
235                 reg_usb0_vbus: usb0_vbus {
236                         compatible = "regulator-fixed";
237                         regulator-name = "usb0_vbus";
238                         regulator-min-microvolt = <5000000>;
239                         regulator-max-microvolt = <5000000>;
240                         gpio = <&gpio3 9 0>;
241                         enable-active-high;
242                 };
243
244                 reg_usb1_vbus: usb1_vbus {
245                         compatible = "regulator-fixed";
246                         regulator-name = "usb1_vbus";
247                         regulator-min-microvolt = <5000000>;
248                         regulator-max-microvolt = <5000000>;
249                         gpio = <&gpio3 8 0>;
250                         enable-active-high;
251                 };
252         };
253
254         sound {
255                 compatible = "fsl,imx28-evk-sgtl5000",
256                              "fsl,mxs-audio-sgtl5000";
257                 model = "imx28-evk-sgtl5000";
258                 saif-controllers = <&saif0 &saif1>;
259                 audio-codec = <&sgtl5000>;
260         };
261
262         leds {
263                 compatible = "gpio-leds";
264
265                 user {
266                         label = "Heartbeat";
267                         gpios = <&gpio3 5 0>;
268                         linux,default-trigger = "heartbeat";
269                 };
270         };
271
272         backlight {
273                 compatible = "pwm-backlight";
274                 pwms = <&pwm 2 5000000>;
275                 brightness-levels = <0 4 8 16 32 64 128 255>;
276                 default-brightness-level = <6>;
277         };
278 };