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 = <®_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 ssp2: ssp@80014000 { 50 #address-cells = <1>; 51 #size-cells = <0>; 52 compatible = "fsl,imx28-spi"; 53 pinctrl-names = "default"; 54 pinctrl-0 = <&spi2_pins_a>; 55 status = "okay"; 56 57 flash: m25p80@0 { 58 #address-cells = <1>; 59 #size-cells = <1>; 60 compatible = "sst,sst25vf016b", "jedec,spi-nor"; 61 spi-max-frequency = <40000000>; 62 reg = <0>; 63 }; 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_SSP1_CMD__GPIO_2_13 74 MX28_PAD_SSP1_DATA3__GPIO_2_15 75 MX28_PAD_ENET0_RX_CLK__GPIO_4_13 76 MX28_PAD_SSP1_SCK__GPIO_2_12 77 MX28_PAD_PWM3__GPIO_3_28 78 MX28_PAD_LCD_RESET__GPIO_3_30 79 MX28_PAD_AUART2_RX__GPIO_3_8 80 MX28_PAD_AUART2_TX__GPIO_3_9 81 >; 82 fsl,drive-strength = <MXS_DRIVE_4mA>; 83 fsl,voltage = <MXS_VOLTAGE_HIGH>; 84 fsl,pull-up = <MXS_PULL_DISABLE>; 85 }; 86 87 led_pin_gpio3_5: led_gpio3_5@0 { 88 reg = <0>; 89 fsl,pinmux-ids = < 90 MX28_PAD_AUART1_TX__GPIO_3_5 91 >; 92 fsl,drive-strength = <MXS_DRIVE_4mA>; 93 fsl,voltage = <MXS_VOLTAGE_HIGH>; 94 fsl,pull-up = <MXS_PULL_DISABLE>; 95 }; 96 97 gpmi_pins_evk: gpmi-nand-evk@0 { 98 reg = <0>; 99 fsl,pinmux-ids = < 100 MX28_PAD_GPMI_CE1N__GPMI_CE1N 101 MX28_PAD_GPMI_RDY1__GPMI_READY1 102 >; 103 fsl,drive-strength = <MXS_DRIVE_4mA>; 104 fsl,voltage = <MXS_VOLTAGE_HIGH>; 105 fsl,pull-up = <MXS_PULL_DISABLE>; 106 }; 107 108 lcdif_pins_evk: lcdif-evk@0 { 109 reg = <0>; 110 fsl,pinmux-ids = < 111 MX28_PAD_LCD_RD_E__LCD_VSYNC 112 MX28_PAD_LCD_WR_RWN__LCD_HSYNC 113 MX28_PAD_LCD_RS__LCD_DOTCLK 114 MX28_PAD_LCD_CS__LCD_ENABLE 115 >; 116 fsl,drive-strength = <MXS_DRIVE_4mA>; 117 fsl,voltage = <MXS_VOLTAGE_HIGH>; 118 fsl,pull-up = <MXS_PULL_DISABLE>; 119 }; 120 }; 121 122 lcdif@80030000 { 123 pinctrl-names = "default"; 124 pinctrl-0 = <&lcdif_24bit_pins_a 125 &lcdif_pins_evk>; 126 lcd-supply = <®_lcd_3v3>; 127 display = <&display0>; 128 status = "okay"; 129 130 display0: display0 { 131 bits-per-pixel = <32>; 132 bus-width = <24>; 133 134 display-timings { 135 native-mode = <&timing0>; 136 timing0: timing0 { 137 clock-frequency = <33500000>; 138 hactive = <800>; 139 vactive = <480>; 140 hback-porch = <89>; 141 hfront-porch = <164>; 142 vback-porch = <23>; 143 vfront-porch = <10>; 144 hsync-len = <10>; 145 vsync-len = <10>; 146 hsync-active = <0>; 147 vsync-active = <0>; 148 de-active = <1>; 149 pixelclk-active = <0>; 150 }; 151 }; 152 }; 153 }; 154 155 can0: can@80032000 { 156 pinctrl-names = "default"; 157 pinctrl-0 = <&can0_pins_a>; 158 xceiver-supply = <®_can_3v3>; 159 status = "okay"; 160 }; 161 162 can1: can@80034000 { 163 pinctrl-names = "default"; 164 pinctrl-0 = <&can1_pins_a>; 165 xceiver-supply = <®_can_3v3>; 166 status = "okay"; 167 }; 168 }; 169 170 apbx@80040000 { 171 saif0: saif@80042000 { 172 pinctrl-names = "default"; 173 pinctrl-0 = <&saif0_pins_a>; 174 status = "okay"; 175 }; 176 177 saif1: saif@80046000 { 178 pinctrl-names = "default"; 179 pinctrl-0 = <&saif1_pins_a>; 180 fsl,saif-master = <&saif0>; 181 status = "okay"; 182 }; 183 184 lradc@80050000 { 185 status = "okay"; 186 fsl,lradc-touchscreen-wires = <4>; 187 fsl,ave-ctrl = <4>; 188 fsl,ave-delay = <2>; 189 fsl,settling = <10>; 190 }; 191 192 i2c0: i2c@80058000 { 193 pinctrl-names = "default"; 194 pinctrl-0 = <&i2c0_pins_a>; 195 status = "okay"; 196 197 sgtl5000: codec@0a { 198 compatible = "fsl,sgtl5000"; 199 reg = <0x0a>; 200 VDDA-supply = <®_3p3v>; 201 VDDIO-supply = <®_3p3v>; 202 clocks = <&saif0>; 203 }; 204 205 at24@51 { 206 compatible = "at24,24c32"; 207 pagesize = <32>; 208 reg = <0x51>; 209 }; 210 }; 211 212 pwm: pwm@80064000 { 213 pinctrl-names = "default"; 214 pinctrl-0 = <&pwm2_pins_a>; 215 status = "okay"; 216 }; 217 218 duart: serial@80074000 { 219 pinctrl-names = "default"; 220 pinctrl-0 = <&duart_pins_a>; 221 status = "okay"; 222 }; 223 224 auart0: serial@8006a000 { 225 pinctrl-names = "default"; 226 pinctrl-0 = <&auart0_pins_a>; 227 fsl,uart-has-rtscts; 228 status = "okay"; 229 }; 230 231 auart3: serial@80070000 { 232 pinctrl-names = "default"; 233 pinctrl-0 = <&auart3_pins_a>; 234 status = "okay"; 235 }; 236 237 usbphy0: usbphy@8007c000 { 238 status = "okay"; 239 }; 240 241 usbphy1: usbphy@8007e000 { 242 status = "okay"; 243 }; 244 }; 245 }; 246 247 ahb@80080000 { 248 usb0: usb@80080000 { 249 pinctrl-names = "default"; 250 pinctrl-0 = <&usb0_id_pins_a>; 251 vbus-supply = <®_usb0_vbus>; 252 status = "okay"; 253 }; 254 255 usb1: usb@80090000 { 256 vbus-supply = <®_usb1_vbus>; 257 status = "okay"; 258 }; 259 260 mac0: ethernet@800f0000 { 261 phy-mode = "rmii"; 262 pinctrl-names = "default"; 263 pinctrl-0 = <&mac0_pins_a>; 264 phy-supply = <®_fec_3v3>; 265 phy-reset-gpios = <&gpio4 13 0>; 266 phy-reset-duration = <100>; 267 status = "okay"; 268 }; 269 270 mac1: ethernet@800f4000 { 271 phy-mode = "rmii"; 272 pinctrl-names = "default"; 273 pinctrl-0 = <&mac1_pins_a>; 274 status = "okay"; 275 }; 276 }; 277 278 regulators { 279 compatible = "simple-bus"; 280 #address-cells = <1>; 281 #size-cells = <0>; 282 283 reg_3p3v: regulator@0 { 284 compatible = "regulator-fixed"; 285 reg = <0>; 286 regulator-name = "3P3V"; 287 regulator-min-microvolt = <3300000>; 288 regulator-max-microvolt = <3300000>; 289 regulator-always-on; 290 }; 291 292 reg_vddio_sd0: regulator@1 { 293 compatible = "regulator-fixed"; 294 reg = <1>; 295 regulator-name = "vddio-sd0"; 296 regulator-min-microvolt = <3300000>; 297 regulator-max-microvolt = <3300000>; 298 gpio = <&gpio3 28 0>; 299 }; 300 301 reg_fec_3v3: regulator@2 { 302 compatible = "regulator-fixed"; 303 reg = <2>; 304 regulator-name = "fec-3v3"; 305 regulator-min-microvolt = <3300000>; 306 regulator-max-microvolt = <3300000>; 307 gpio = <&gpio2 15 0>; 308 }; 309 310 reg_usb0_vbus: regulator@3 { 311 compatible = "regulator-fixed"; 312 reg = <3>; 313 regulator-name = "usb0_vbus"; 314 regulator-min-microvolt = <5000000>; 315 regulator-max-microvolt = <5000000>; 316 gpio = <&gpio3 9 0>; 317 enable-active-high; 318 }; 319 320 reg_usb1_vbus: regulator@4 { 321 compatible = "regulator-fixed"; 322 reg = <4>; 323 regulator-name = "usb1_vbus"; 324 regulator-min-microvolt = <5000000>; 325 regulator-max-microvolt = <5000000>; 326 gpio = <&gpio3 8 0>; 327 enable-active-high; 328 }; 329 330 reg_lcd_3v3: regulator@5 { 331 compatible = "regulator-fixed"; 332 reg = <5>; 333 regulator-name = "lcd-3v3"; 334 regulator-min-microvolt = <3300000>; 335 regulator-max-microvolt = <3300000>; 336 gpio = <&gpio3 30 0>; 337 enable-active-high; 338 }; 339 340 reg_can_3v3: regulator@6 { 341 compatible = "regulator-fixed"; 342 reg = <6>; 343 regulator-name = "can-3v3"; 344 regulator-min-microvolt = <3300000>; 345 regulator-max-microvolt = <3300000>; 346 gpio = <&gpio2 13 0>; 347 enable-active-high; 348 }; 349 350 }; 351 352 sound { 353 compatible = "fsl,imx28-evk-sgtl5000", 354 "fsl,mxs-audio-sgtl5000"; 355 model = "imx28-evk-sgtl5000"; 356 saif-controllers = <&saif0 &saif1>; 357 audio-codec = <&sgtl5000>; 358 }; 359 360 leds { 361 compatible = "gpio-leds"; 362 pinctrl-names = "default"; 363 pinctrl-0 = <&led_pin_gpio3_5>; 364 365 user { 366 label = "Heartbeat"; 367 gpios = <&gpio3 5 0>; 368 linux,default-trigger = "heartbeat"; 369 }; 370 }; 371 372 backlight { 373 compatible = "pwm-backlight"; 374 pwms = <&pwm 2 5000000>; 375 brightness-levels = <0 4 8 16 32 64 128 255>; 376 default-brightness-level = <6>; 377 }; 378}; 379