Home | History | Annotate | Line # | Download | only in mxs
      1 // SPDX-License-Identifier: GPL-2.0+
      2 //
      3 // Copyright 2012 Freescale Semiconductor, Inc.
      4 
      5 /dts-v1/;
      6 #include "imx28.dtsi"
      7 
      8 / {
      9 	model = "Freescale i.MX28 Evaluation Kit";
     10 	compatible = "fsl,imx28-evk", "fsl,imx28";
     11 
     12 	memory@40000000 {
     13 		device_type = "memory";
     14 		reg = <0x40000000 0x08000000>;
     15 	};
     16 
     17 
     18 	reg_3p3v: regulator-3p3v {
     19 		compatible = "regulator-fixed";
     20 		regulator-name = "3P3V";
     21 		regulator-min-microvolt = <3300000>;
     22 		regulator-max-microvolt = <3300000>;
     23 		regulator-always-on;
     24 	};
     25 
     26 	reg_vddio_sd0: regulator-vddio-sd0 {
     27 		compatible = "regulator-fixed";
     28 		regulator-name = "vddio-sd0";
     29 		regulator-min-microvolt = <3300000>;
     30 		regulator-max-microvolt = <3300000>;
     31 		gpio = <&gpio3 28 0>;
     32 	};
     33 
     34 	reg_fec_3v3: regulator-fec-3v3 {
     35 		compatible = "regulator-fixed";
     36 		regulator-name = "fec-3v3";
     37 		regulator-min-microvolt = <3300000>;
     38 		regulator-max-microvolt = <3300000>;
     39 		gpio = <&gpio2 15 0>;
     40 	};
     41 
     42 	reg_usb0_vbus: regulator-usb0-vbus {
     43 		compatible = "regulator-fixed";
     44 		regulator-name = "usb0_vbus";
     45 		regulator-min-microvolt = <5000000>;
     46 		regulator-max-microvolt = <5000000>;
     47 		gpio = <&gpio3 9 0>;
     48 		enable-active-high;
     49 	};
     50 
     51 	reg_usb1_vbus: regulator-usb1-vbus {
     52 		compatible = "regulator-fixed";
     53 		regulator-name = "usb1_vbus";
     54 		regulator-min-microvolt = <5000000>;
     55 		regulator-max-microvolt = <5000000>;
     56 		gpio = <&gpio3 8 0>;
     57 		enable-active-high;
     58 	};
     59 
     60 	reg_lcd_3v3: regulator-lcd-3v3 {
     61 		compatible = "regulator-fixed";
     62 		regulator-name = "lcd-3v3";
     63 		regulator-min-microvolt = <3300000>;
     64 		regulator-max-microvolt = <3300000>;
     65 		gpio = <&gpio3 30 0>;
     66 		enable-active-high;
     67 	};
     68 
     69 	reg_can_3v3: regulator-can-3v3 {
     70 		compatible = "regulator-fixed";
     71 		regulator-name = "can-3v3";
     72 		regulator-min-microvolt = <3300000>;
     73 		regulator-max-microvolt = <3300000>;
     74 		gpio = <&gpio2 13 0>;
     75 		enable-active-high;
     76 	};
     77 
     78 	reg_lcd_5v: regulator-lcd-5v {
     79 		compatible = "regulator-fixed";
     80 		regulator-name = "lcd-5v";
     81 		regulator-min-microvolt = <5000000>;
     82 		regulator-max-microvolt = <5000000>;
     83 	};
     84 
     85 	panel {
     86 		compatible = "sii,43wvf1g";
     87 		backlight = <&backlight_display>;
     88 		dvdd-supply = <&reg_lcd_3v3>;
     89 		avdd-supply = <&reg_lcd_5v>;
     90 
     91 		port {
     92 			panel_in: endpoint {
     93 				remote-endpoint = <&display_out>;
     94 			};
     95 		};
     96 	};
     97 
     98 	sound {
     99 		compatible = "fsl,imx28-evk-sgtl5000",
    100 			     "fsl,mxs-audio-sgtl5000";
    101 		model = "imx28-evk-sgtl5000";
    102 		saif-controllers = <&saif0 &saif1>;
    103 		audio-codec = <&sgtl5000>;
    104 	};
    105 
    106 	leds {
    107 		compatible = "gpio-leds";
    108 		pinctrl-names = "default";
    109 		pinctrl-0 = <&led_pin_gpio3_5>;
    110 
    111 		user {
    112 			label = "Heartbeat";
    113 			gpios = <&gpio3 5 0>;
    114 			linux,default-trigger = "heartbeat";
    115 		};
    116 	};
    117 
    118 	backlight_display: backlight {
    119 		compatible = "pwm-backlight";
    120 		pwms = <&pwm 2 5000000 0>;
    121 		brightness-levels = <0 4 8 16 32 64 128 255>;
    122 		default-brightness-level = <6>;
    123 	};
    124 };
    125 
    126 &auart0 {
    127 	pinctrl-names = "default";
    128 	pinctrl-0 = <&auart0_pins_a>;
    129 	uart-has-rtscts;
    130 	status = "okay";
    131 };
    132 
    133 &auart3 {
    134 	pinctrl-names = "default";
    135 	pinctrl-0 = <&auart3_pins_a>;
    136 	status = "okay";
    137 };
    138 
    139 &can0 {
    140 	pinctrl-names = "default";
    141 	pinctrl-0 = <&can0_pins_a>;
    142 	xceiver-supply = <&reg_can_3v3>;
    143 	status = "okay";
    144 };
    145 
    146 &can1 {
    147 	pinctrl-names = "default";
    148 	pinctrl-0 = <&can1_pins_a>;
    149 	xceiver-supply = <&reg_can_3v3>;
    150 	status = "okay";
    151 };
    152 
    153 &duart {
    154 	pinctrl-names = "default";
    155 	pinctrl-0 = <&duart_pins_a>;
    156 	status = "okay";
    157 };
    158 
    159 &gpmi {
    160 	pinctrl-names = "default";
    161 	pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg
    162 		     &gpmi_pins_evk>;
    163 	status = "okay";
    164 };
    165 
    166 &lcdif {
    167 	pinctrl-names = "default";
    168 	pinctrl-0 = <&lcdif_24bit_pins_a
    169 		     &lcdif_pins_evk>;
    170 	status = "okay";
    171 
    172 	port {
    173 		display_out: endpoint {
    174 			remote-endpoint = <&panel_in>;
    175 		};
    176 	};
    177 };
    178 
    179 &lradc {
    180 	fsl,lradc-touchscreen-wires = <4>;
    181 	fsl,ave-ctrl = <4>;
    182 	fsl,ave-delay = <2>;
    183 	fsl,settling = <10>;
    184 	status = "okay";
    185 };
    186 
    187 &i2c0 {
    188 	pinctrl-names = "default";
    189 	pinctrl-0 = <&i2c0_pins_a>;
    190 	status = "okay";
    191 
    192 	sgtl5000: codec@a {
    193 		compatible = "fsl,sgtl5000";
    194 		reg = <0x0a>;
    195 		#sound-dai-cells = <0>;
    196 		VDDA-supply = <&reg_3p3v>;
    197 		VDDIO-supply = <&reg_3p3v>;
    198 		clocks = <&saif0>;
    199 	};
    200 
    201 	eeprom@51 {
    202 		compatible = "atmel,24c32";
    203 		pagesize = <32>;
    204 		reg = <0x51>;
    205 	};
    206 };
    207 
    208 &mac0 {
    209 	phy-mode = "rmii";
    210 	pinctrl-names = "default";
    211 	pinctrl-0 = <&mac0_pins_a>;
    212 	phy-supply = <&reg_fec_3v3>;
    213 	phy-reset-gpios = <&gpio4 13 GPIO_ACTIVE_LOW>;
    214 	phy-reset-duration = <100>;
    215 	status = "okay";
    216 };
    217 
    218 &mac1 {
    219 	phy-mode = "rmii";
    220 	pinctrl-names = "default";
    221 	pinctrl-0 = <&mac1_pins_a>;
    222 	status = "okay";
    223 };
    224 
    225 &pinctrl {
    226 	pinctrl-names = "default";
    227 	pinctrl-0 = <&hog_pins_a>;
    228 
    229 	hog_pins_a: hog@0 {
    230 		reg = <0>;
    231 		fsl,pinmux-ids = <
    232 			MX28_PAD_SSP1_CMD__GPIO_2_13
    233 			MX28_PAD_SSP1_DATA3__GPIO_2_15
    234 			MX28_PAD_ENET0_RX_CLK__GPIO_4_13
    235 			MX28_PAD_SSP1_SCK__GPIO_2_12
    236 			MX28_PAD_PWM3__GPIO_3_28
    237 			MX28_PAD_LCD_RESET__GPIO_3_30
    238 			MX28_PAD_AUART2_RX__GPIO_3_8
    239 			MX28_PAD_AUART2_TX__GPIO_3_9
    240 		>;
    241 		fsl,drive-strength = <MXS_DRIVE_4mA>;
    242 		fsl,voltage = <MXS_VOLTAGE_HIGH>;
    243 		fsl,pull-up = <MXS_PULL_DISABLE>;
    244 	};
    245 
    246 	led_pin_gpio3_5: led_gpio3_5@0 {
    247 		reg = <0>;
    248 		fsl,pinmux-ids = <
    249 			MX28_PAD_AUART1_TX__GPIO_3_5
    250 		>;
    251 		fsl,drive-strength = <MXS_DRIVE_4mA>;
    252 		fsl,voltage = <MXS_VOLTAGE_HIGH>;
    253 		fsl,pull-up = <MXS_PULL_DISABLE>;
    254 	};
    255 
    256 	gpmi_pins_evk: gpmi-nand-evk@0 {
    257 		reg = <0>;
    258 		fsl,pinmux-ids = <
    259 			MX28_PAD_GPMI_CE1N__GPMI_CE1N
    260 			MX28_PAD_GPMI_RDY1__GPMI_READY1
    261 		>;
    262 		fsl,drive-strength = <MXS_DRIVE_4mA>;
    263 		fsl,voltage = <MXS_VOLTAGE_HIGH>;
    264 		fsl,pull-up = <MXS_PULL_DISABLE>;
    265 	};
    266 
    267 	lcdif_pins_evk: lcdif-evk@0 {
    268 		reg = <0>;
    269 		fsl,pinmux-ids = <
    270 			MX28_PAD_LCD_RD_E__LCD_VSYNC
    271 			MX28_PAD_LCD_WR_RWN__LCD_HSYNC
    272 			MX28_PAD_LCD_RS__LCD_DOTCLK
    273 			MX28_PAD_LCD_CS__LCD_ENABLE
    274 		>;
    275 		fsl,drive-strength = <MXS_DRIVE_4mA>;
    276 		fsl,voltage = <MXS_VOLTAGE_HIGH>;
    277 		fsl,pull-up = <MXS_PULL_DISABLE>;
    278 	};
    279 };
    280 
    281 &pwm {
    282 	pinctrl-names = "default";
    283 	pinctrl-0 = <&pwm2_pins_a>;
    284 	status = "okay";
    285 };
    286 
    287 &saif0 {
    288 	pinctrl-names = "default";
    289 	pinctrl-0 = <&saif0_pins_a>;
    290 	status = "okay";
    291 };
    292 
    293 &saif1 {
    294 	pinctrl-names = "default";
    295 	pinctrl-0 = <&saif1_pins_a>;
    296 	fsl,saif-master = <&saif0>;
    297 	status = "okay";
    298 };
    299 
    300 &ssp0 {
    301 	compatible = "fsl,imx28-mmc";
    302 	pinctrl-names = "default";
    303 	pinctrl-0 = <&mmc0_8bit_pins_a
    304 		&mmc0_cd_cfg &mmc0_sck_cfg>;
    305 	bus-width = <8>;
    306 	wp-gpios = <&gpio2 12 0>;
    307 	vmmc-supply = <&reg_vddio_sd0>;
    308 	status = "okay";
    309 };
    310 
    311 &ssp1 {
    312 	compatible = "fsl,imx28-mmc";
    313 	bus-width = <8>;
    314 	wp-gpios = <&gpio0 28 0>;
    315 };
    316 
    317 &ssp2 {
    318 	#address-cells = <1>;
    319 	#size-cells = <0>;
    320 	compatible = "fsl,imx28-spi";
    321 	pinctrl-names = "default";
    322 	pinctrl-0 = <&spi2_pins_a>;
    323 	status = "okay";
    324 
    325 	flash: flash@0 {
    326 		reg = <0>;
    327 		#address-cells = <1>;
    328 		#size-cells = <1>;
    329 		compatible = "sst,sst25vf016b", "jedec,spi-nor";
    330 		spi-max-frequency = <40000000>;
    331 	};
    332 };
    333 
    334 &usb0 {
    335 	pinctrl-names = "default";
    336 	pinctrl-0 = <&usb0_id_pins_a>;
    337 	vbus-supply = <&reg_usb0_vbus>;
    338 	status = "okay";
    339 };
    340 
    341 &usb1 {
    342 	vbus-supply = <&reg_usb1_vbus>;
    343 	status = "okay";
    344 };
    345 
    346 &usbphy0 {
    347 	status = "okay";
    348 };
    349 
    350 &usbphy1 {
    351 	status = "okay";
    352 };
    353