0001 // SPDX-License-Identifier: GPL-2.0+
0002 //
0003 // Copyright 2012 Freescale Semiconductor, Inc.
0004
0005 /dts-v1/;
0006 #include "imx28.dtsi"
0007
0008 / {
0009 model = "Freescale i.MX28 Evaluation Kit";
0010 compatible = "fsl,imx28-evk", "fsl,imx28";
0011
0012 memory@40000000 {
0013 device_type = "memory";
0014 reg = <0x40000000 0x08000000>;
0015 };
0016
0017
0018 reg_3p3v: regulator-3p3v {
0019 compatible = "regulator-fixed";
0020 regulator-name = "3P3V";
0021 regulator-min-microvolt = <3300000>;
0022 regulator-max-microvolt = <3300000>;
0023 regulator-always-on;
0024 };
0025
0026 reg_vddio_sd0: regulator-vddio-sd0 {
0027 compatible = "regulator-fixed";
0028 regulator-name = "vddio-sd0";
0029 regulator-min-microvolt = <3300000>;
0030 regulator-max-microvolt = <3300000>;
0031 gpio = <&gpio3 28 0>;
0032 };
0033
0034 reg_fec_3v3: regulator-fec-3v3 {
0035 compatible = "regulator-fixed";
0036 regulator-name = "fec-3v3";
0037 regulator-min-microvolt = <3300000>;
0038 regulator-max-microvolt = <3300000>;
0039 gpio = <&gpio2 15 0>;
0040 };
0041
0042 reg_usb0_vbus: regulator-usb0-vbus {
0043 compatible = "regulator-fixed";
0044 regulator-name = "usb0_vbus";
0045 regulator-min-microvolt = <5000000>;
0046 regulator-max-microvolt = <5000000>;
0047 gpio = <&gpio3 9 0>;
0048 enable-active-high;
0049 };
0050
0051 reg_usb1_vbus: regulator-usb1-vbus {
0052 compatible = "regulator-fixed";
0053 regulator-name = "usb1_vbus";
0054 regulator-min-microvolt = <5000000>;
0055 regulator-max-microvolt = <5000000>;
0056 gpio = <&gpio3 8 0>;
0057 enable-active-high;
0058 };
0059
0060 reg_lcd_3v3: regulator-lcd-3v3 {
0061 compatible = "regulator-fixed";
0062 regulator-name = "lcd-3v3";
0063 regulator-min-microvolt = <3300000>;
0064 regulator-max-microvolt = <3300000>;
0065 gpio = <&gpio3 30 0>;
0066 enable-active-high;
0067 };
0068
0069 reg_can_3v3: regulator-can-3v3 {
0070 compatible = "regulator-fixed";
0071 regulator-name = "can-3v3";
0072 regulator-min-microvolt = <3300000>;
0073 regulator-max-microvolt = <3300000>;
0074 gpio = <&gpio2 13 0>;
0075 enable-active-high;
0076 };
0077
0078 reg_lcd_5v: regulator-lcd-5v {
0079 compatible = "regulator-fixed";
0080 regulator-name = "lcd-5v";
0081 regulator-min-microvolt = <5000000>;
0082 regulator-max-microvolt = <5000000>;
0083 };
0084
0085 panel {
0086 compatible = "sii,43wvf1g";
0087 backlight = <&backlight_display>;
0088 dvdd-supply = <®_lcd_3v3>;
0089 avdd-supply = <®_lcd_5v>;
0090
0091 port {
0092 panel_in: endpoint {
0093 remote-endpoint = <&display_out>;
0094 };
0095 };
0096 };
0097
0098 apb@80000000 {
0099 apbh@80000000 {
0100 nand-controller@8000c000 {
0101 pinctrl-names = "default";
0102 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg
0103 &gpmi_pins_evk>;
0104 status = "okay";
0105 };
0106
0107 ssp0: spi@80010000 {
0108 compatible = "fsl,imx28-mmc";
0109 pinctrl-names = "default";
0110 pinctrl-0 = <&mmc0_8bit_pins_a
0111 &mmc0_cd_cfg &mmc0_sck_cfg>;
0112 bus-width = <8>;
0113 wp-gpios = <&gpio2 12 0>;
0114 vmmc-supply = <®_vddio_sd0>;
0115 status = "okay";
0116 };
0117
0118 ssp1: spi@80012000 {
0119 compatible = "fsl,imx28-mmc";
0120 bus-width = <8>;
0121 wp-gpios = <&gpio0 28 0>;
0122 };
0123
0124 ssp2: spi@80014000 {
0125 #address-cells = <1>;
0126 #size-cells = <0>;
0127 compatible = "fsl,imx28-spi";
0128 pinctrl-names = "default";
0129 pinctrl-0 = <&spi2_pins_a>;
0130 status = "okay";
0131
0132 flash: flash@0 {
0133 #address-cells = <1>;
0134 #size-cells = <1>;
0135 compatible = "sst,sst25vf016b", "jedec,spi-nor";
0136 spi-max-frequency = <40000000>;
0137 reg = <0>;
0138 };
0139 };
0140
0141 pinctrl@80018000 {
0142 pinctrl-names = "default";
0143 pinctrl-0 = <&hog_pins_a>;
0144
0145 hog_pins_a: hog@0 {
0146 reg = <0>;
0147 fsl,pinmux-ids = <
0148 MX28_PAD_SSP1_CMD__GPIO_2_13
0149 MX28_PAD_SSP1_DATA3__GPIO_2_15
0150 MX28_PAD_ENET0_RX_CLK__GPIO_4_13
0151 MX28_PAD_SSP1_SCK__GPIO_2_12
0152 MX28_PAD_PWM3__GPIO_3_28
0153 MX28_PAD_LCD_RESET__GPIO_3_30
0154 MX28_PAD_AUART2_RX__GPIO_3_8
0155 MX28_PAD_AUART2_TX__GPIO_3_9
0156 >;
0157 fsl,drive-strength = <MXS_DRIVE_4mA>;
0158 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0159 fsl,pull-up = <MXS_PULL_DISABLE>;
0160 };
0161
0162 led_pin_gpio3_5: led_gpio3_5@0 {
0163 reg = <0>;
0164 fsl,pinmux-ids = <
0165 MX28_PAD_AUART1_TX__GPIO_3_5
0166 >;
0167 fsl,drive-strength = <MXS_DRIVE_4mA>;
0168 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0169 fsl,pull-up = <MXS_PULL_DISABLE>;
0170 };
0171
0172 gpmi_pins_evk: gpmi-nand-evk@0 {
0173 reg = <0>;
0174 fsl,pinmux-ids = <
0175 MX28_PAD_GPMI_CE1N__GPMI_CE1N
0176 MX28_PAD_GPMI_RDY1__GPMI_READY1
0177 >;
0178 fsl,drive-strength = <MXS_DRIVE_4mA>;
0179 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0180 fsl,pull-up = <MXS_PULL_DISABLE>;
0181 };
0182
0183 lcdif_pins_evk: lcdif-evk@0 {
0184 reg = <0>;
0185 fsl,pinmux-ids = <
0186 MX28_PAD_LCD_RD_E__LCD_VSYNC
0187 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
0188 MX28_PAD_LCD_RS__LCD_DOTCLK
0189 MX28_PAD_LCD_CS__LCD_ENABLE
0190 >;
0191 fsl,drive-strength = <MXS_DRIVE_4mA>;
0192 fsl,voltage = <MXS_VOLTAGE_HIGH>;
0193 fsl,pull-up = <MXS_PULL_DISABLE>;
0194 };
0195 };
0196
0197 lcdif@80030000 {
0198 pinctrl-names = "default";
0199 pinctrl-0 = <&lcdif_24bit_pins_a
0200 &lcdif_pins_evk>;
0201 status = "okay";
0202
0203 port {
0204 display_out: endpoint {
0205 remote-endpoint = <&panel_in>;
0206 };
0207 };
0208 };
0209
0210 can0: can@80032000 {
0211 pinctrl-names = "default";
0212 pinctrl-0 = <&can0_pins_a>;
0213 xceiver-supply = <®_can_3v3>;
0214 status = "okay";
0215 };
0216
0217 can1: can@80034000 {
0218 pinctrl-names = "default";
0219 pinctrl-0 = <&can1_pins_a>;
0220 xceiver-supply = <®_can_3v3>;
0221 status = "okay";
0222 };
0223 };
0224
0225 apbx@80040000 {
0226 saif0: saif@80042000 {
0227 pinctrl-names = "default";
0228 pinctrl-0 = <&saif0_pins_a>;
0229 status = "okay";
0230 };
0231
0232 saif1: saif@80046000 {
0233 pinctrl-names = "default";
0234 pinctrl-0 = <&saif1_pins_a>;
0235 fsl,saif-master = <&saif0>;
0236 status = "okay";
0237 };
0238
0239 lradc@80050000 {
0240 status = "okay";
0241 fsl,lradc-touchscreen-wires = <4>;
0242 fsl,ave-ctrl = <4>;
0243 fsl,ave-delay = <2>;
0244 fsl,settling = <10>;
0245 };
0246
0247 i2c0: i2c@80058000 {
0248 pinctrl-names = "default";
0249 pinctrl-0 = <&i2c0_pins_a>;
0250 status = "okay";
0251
0252 sgtl5000: codec@a {
0253 compatible = "fsl,sgtl5000";
0254 reg = <0x0a>;
0255 #sound-dai-cells = <0>;
0256 VDDA-supply = <®_3p3v>;
0257 VDDIO-supply = <®_3p3v>;
0258 clocks = <&saif0>;
0259 };
0260
0261 at24@51 {
0262 compatible = "atmel,24c32";
0263 pagesize = <32>;
0264 reg = <0x51>;
0265 };
0266 };
0267
0268 pwm: pwm@80064000 {
0269 pinctrl-names = "default";
0270 pinctrl-0 = <&pwm2_pins_a>;
0271 status = "okay";
0272 };
0273
0274 duart: serial@80074000 {
0275 pinctrl-names = "default";
0276 pinctrl-0 = <&duart_pins_a>;
0277 status = "okay";
0278 };
0279
0280 auart0: serial@8006a000 {
0281 pinctrl-names = "default";
0282 pinctrl-0 = <&auart0_pins_a>;
0283 uart-has-rtscts;
0284 status = "okay";
0285 };
0286
0287 auart3: serial@80070000 {
0288 pinctrl-names = "default";
0289 pinctrl-0 = <&auart3_pins_a>;
0290 status = "okay";
0291 };
0292
0293 usbphy0: usbphy@8007c000 {
0294 status = "okay";
0295 };
0296
0297 usbphy1: usbphy@8007e000 {
0298 status = "okay";
0299 };
0300 };
0301 };
0302
0303 ahb@80080000 {
0304 usb0: usb@80080000 {
0305 pinctrl-names = "default";
0306 pinctrl-0 = <&usb0_id_pins_a>;
0307 vbus-supply = <®_usb0_vbus>;
0308 status = "okay";
0309 };
0310
0311 usb1: usb@80090000 {
0312 vbus-supply = <®_usb1_vbus>;
0313 status = "okay";
0314 };
0315
0316 mac0: ethernet@800f0000 {
0317 phy-mode = "rmii";
0318 pinctrl-names = "default";
0319 pinctrl-0 = <&mac0_pins_a>;
0320 phy-supply = <®_fec_3v3>;
0321 phy-reset-gpios = <&gpio4 13 GPIO_ACTIVE_LOW>;
0322 phy-reset-duration = <100>;
0323 status = "okay";
0324 };
0325
0326 mac1: ethernet@800f4000 {
0327 phy-mode = "rmii";
0328 pinctrl-names = "default";
0329 pinctrl-0 = <&mac1_pins_a>;
0330 status = "okay";
0331 };
0332 };
0333
0334 sound {
0335 compatible = "fsl,imx28-evk-sgtl5000",
0336 "fsl,mxs-audio-sgtl5000";
0337 model = "imx28-evk-sgtl5000";
0338 saif-controllers = <&saif0 &saif1>;
0339 audio-codec = <&sgtl5000>;
0340 };
0341
0342 leds {
0343 compatible = "gpio-leds";
0344 pinctrl-names = "default";
0345 pinctrl-0 = <&led_pin_gpio3_5>;
0346
0347 user {
0348 label = "Heartbeat";
0349 gpios = <&gpio3 5 0>;
0350 linux,default-trigger = "heartbeat";
0351 };
0352 };
0353
0354 backlight_display: backlight {
0355 compatible = "pwm-backlight";
0356 pwms = <&pwm 2 5000000>;
0357 brightness-levels = <0 4 8 16 32 64 128 255>;
0358 default-brightness-level = <6>;
0359 };
0360 };