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