Home | History | Annotate | Download | only in dts
      1 /*
      2  * Copyright 2016 Freescale Semiconductor, Inc.
      3  *
      4  * This program is free software; you can redistribute it and/or modify
      5  * it under the terms of the GNU General Public License version 2 as
      6  * published by the Free Software Foundation.
      7  */
      8 
      9 /dts-v1/;
     10 
     11 #include "imx7ulp.dtsi"
     12 
     13 / {
     14 	model = "NXP i.MX7ULP EVK";
     15 	compatible = "fsl,imx7ulp-evk", "fsl,imx7ulp", "Generic DT based system";
     16 
     17 	chosen {
     18 		bootargs = "console=ttyLP0,115200 earlycon=lpuart32,0x402D0010,115200";
     19 		stdout-path = &lpuart4;
     20 	};
     21 
     22 	bcmdhd_wlan_0: bcmdhd_wlan@0 {
     23 		compatible = "android,bcmdhd_wlan";
     24 		wlreg_on-supply = <&wlreg_on>;
     25 		bcmdhd_fw = "/lib/firmware/bcm/1DX_BCM4343W/fw_bcmdhd.bin";
     26 		bcmdhd_nv = "/lib/firmware/bcm/1DX_BCM4343W/bcmdhd.1DX.SDIO.cal";
     27 	};
     28 
     29 	memory {
     30 		device_type = "memory";
     31 		reg = <0x60000000 0x40000000>;
     32 	};
     33 
     34 	backlight {
     35 		compatible = "gpio-backlight";
     36 		pinctrl-names = "default";
     37 		pinctrl-0 = <&pinctrl_backlight>;
     38 		gpios = <&gpio3 2 GPIO_ACTIVE_HIGH>;
     39 		default-on;
     40 		status = "okay";
     41 	};
     42 
     43 	mipi_dsi_reset: mipi-dsi-reset {
     44 		compatible = "gpio-reset";
     45 		reset-gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
     46 		reset-delay-us = <1000>;
     47 		#reset-cells = <0>;
     48 	};
     49 
     50 	regulators {
     51 		compatible = "simple-bus";
     52 		#address-cells = <1>;
     53 		#size-cells = <0>;
     54 
     55 		wlreg_on: fixedregulator@100 {
     56 			compatible = "regulator-fixed";
     57 			regulator-min-microvolt = <5000000>;
     58 			regulator-max-microvolt = <5000000>;
     59 			regulator-name = "wlreg_on";
     60 			gpio = <&gpio2 6 GPIO_ACTIVE_HIGH>;
     61 			startup-delay-us = <100>;
     62 			enable-active-high;
     63 		};
     64 
     65 		reg_usb_otg1_vbus: regulator@0 {
     66 			compatible = "regulator-fixed";
     67 			reg = <0>;
     68 			pinctrl-names = "default";
     69 			pinctrl-0 = <&pinctrl_usb_otg1>;
     70 			regulator-name = "usb_otg1_vbus";
     71 			regulator-min-microvolt = <5000000>;
     72 			regulator-max-microvolt = <5000000>;
     73 			gpio = <&gpio0 0 GPIO_ACTIVE_HIGH>;
     74 			enable-active-high;
     75 		};
     76 
     77 		reg_vsd_3v3: regulator@1 {
     78 			compatible = "regulator-fixed";
     79 			reg = <1>;
     80 			regulator-name = "VSD_3V3";
     81 			regulator-min-microvolt = <3300000>;
     82 			regulator-max-microvolt = <3300000>;
     83 			gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>;
     84 			enable-active-high;
     85 		};
     86 
     87 		reg_vsd_3v3b: regulator@2 {
     88 			compatible = "regulator-fixed";
     89 			reg = <2>;
     90 			regulator-name = "VSD_3V3B";
     91 			regulator-min-microvolt = <3300000>;
     92 			regulator-max-microvolt = <3300000>;
     93 			gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>;
     94 			enable-active-high;
     95 		};
     96 	};
     97 
     98 	extcon_usb1: extcon_usb1 {
     99 		compatible = "linux,extcon-usb-gpio";
    100 		id-gpio = <&gpio0 8 GPIO_ACTIVE_HIGH>;
    101 		pinctrl-names = "default";
    102 		pinctrl-0 = <&pinctrl_extcon_usb1>;
    103 	};
    104 
    105 	pf1550-rpmsg {
    106 		compatible = "fsl,pf1550-rpmsg";
    107 		sw1_reg: SW1 {
    108 				regulator-name = "SW1";
    109 				regulator-min-microvolt = <600000>;
    110 				regulator-max-microvolt = <1387500>;
    111 				regulator-boot-on;
    112 				regulator-always-on;
    113 		};
    114 
    115 		sw2_reg: SW2 {
    116 				regulator-name = "SW2";
    117 				regulator-min-microvolt = <600000>;
    118 				regulator-max-microvolt = <1387500>;
    119 				regulator-boot-on;
    120 				regulator-always-on;
    121 		};
    122 
    123 		sw3_reg: SW3 {
    124 				regulator-name = "SW3";
    125 				regulator-min-microvolt = <1800000>;
    126 				regulator-max-microvolt = <3300000>;
    127 				regulator-boot-on;
    128 				regulator-always-on;
    129 		};
    130 
    131 		vref_reg: VREFDDR {
    132 				regulator-name = "VREFDDR";
    133 				regulator-min-microvolt = <1200000>;
    134 				regulator-max-microvolt = <1200000>;
    135 				regulator-boot-on;
    136 				regulator-always-on;
    137 		};
    138 
    139 		vldo1_reg: LDO1 {
    140 				regulator-name = "LDO1";
    141 				regulator-min-microvolt = <750000>;
    142 				regulator-max-microvolt = <3300000>;
    143 				regulator-always-on;
    144 		};
    145 
    146 		vldo2_reg: LDO2 {
    147 				regulator-name = "LDO2";
    148 				regulator-min-microvolt = <1800000>;
    149 				regulator-max-microvolt = <3300000>;
    150 				regulator-always-on;
    151 		};
    152 
    153 		vldo3_reg: LDO3 {
    154 				regulator-name = "LDO3";
    155 				regulator-min-microvolt = <750000>;
    156 				regulator-max-microvolt = <3300000>;
    157 				regulator-always-on;
    158 		};
    159 	};
    160 };
    161 
    162 &iomuxc1 {
    163 	pinctrl-names = "default";
    164 	pinctrl-0 = <&pinctrl_hog_1>;
    165 
    166 	imx7ulp-evk {
    167 		pinctrl_hog_1: hoggrp-1 {
    168 			fsl,pins = <
    169 				ULP1_PAD_PTC10__PTC10		0x30100		/* USDHC0 CD */
    170 				ULP1_PAD_PTC1__PTC1		0x20100
    171 				ULP1_PAD_PTD0__PTD0		0x30100		/* USDHC0 RST */
    172 				ULP1_PAD_PTE13__PTE13		0x30103		/* USDHC1 CD */
    173 				ULP1_PAD_PTE12__PTE12		0x30103		/* USDHC1 WP */
    174 				ULP1_PAD_PTE14__SDHC1_VS	0x843		/* USDHC1 VSEL */
    175 			>;
    176 		};
    177 
    178 		pinctrl_backlight: backlight_grp {
    179 			fsl,pins = <
    180 				ULP1_PAD_PTF2__PTF2		0x20100
    181 			>;
    182 		};
    183 
    184 		pinctrl_lpi2c5: lpi2c5grp {
    185 			fsl,pins = <
    186 				ULP1_PAD_PTC4__LPI2C5_SCL       0x527
    187 				ULP1_PAD_PTC5__LPI2C5_SDA       0x527
    188 			>;
    189 		};
    190 
    191 		pinctrl_mipi_dsi_reset: mipi_dsi_reset_grp {
    192 			fsl,pins = <
    193 				ULP1_PAD_PTC19__PTC19		0x20103
    194 			>;
    195 		};
    196 
    197 		pinctrl_lpuart4: lpuart4grp {
    198 			fsl,pins = <
    199 				ULP1_PAD_PTC3__LPUART4_RX	0x400
    200 				ULP1_PAD_PTC2__LPUART4_TX	0x400
    201 			>;
    202 		};
    203 
    204 		pinctrl_lpuart6: lpuart6grp {
    205 			fsl,pins = <
    206 				ULP1_PAD_PTE10__LPUART6_TX	0x400
    207 				ULP1_PAD_PTE11__LPUART6_RX	0x400
    208 				ULP1_PAD_PTE9__LPUART6_RTS_B	0x400
    209 				ULP1_PAD_PTE8__LPUART6_CTS_B	0x400
    210 				ULP1_PAD_PTE7__PTE7		0x00 /* BT_REG_ON */
    211 			>;
    212 		};
    213 
    214 		pinctrl_lpuart7: lpuart7grp {
    215 			fsl,pins = <
    216 				ULP1_PAD_PTF14__LPUART7_TX	0x400
    217 				ULP1_PAD_PTF15__LPUART7_RX	0x400
    218 				ULP1_PAD_PTF13__LPUART7_RTS_B	0x400
    219 				ULP1_PAD_PTF12__LPUART7_CTS_B	0x400
    220 			>;
    221 		};
    222 
    223 		pinctrl_usdhc0: usdhc0grp {
    224 			fsl,pins = <
    225 				ULP1_PAD_PTD1__SDHC0_CMD	0x843
    226 				ULP1_PAD_PTD2__SDHC0_CLK	0x10843
    227 				ULP1_PAD_PTD7__SDHC0_D3		0x843
    228 				ULP1_PAD_PTD8__SDHC0_D2		0x843
    229 				ULP1_PAD_PTD9__SDHC0_D1		0x843
    230 				ULP1_PAD_PTD10__SDHC0_D0	0x843
    231 			>;
    232 		};
    233 
    234 		pinctrl_usdhc0_8bit: usdhc0grp_8bit {
    235 			fsl,pins = <
    236 				ULP1_PAD_PTD1__SDHC0_CMD	0x843
    237 				ULP1_PAD_PTD2__SDHC0_CLK	0x843
    238 				ULP1_PAD_PTD3__SDHC0_D7		0x843
    239 				ULP1_PAD_PTD4__SDHC0_D6		0x843
    240 				ULP1_PAD_PTD5__SDHC0_D5		0x843
    241 				ULP1_PAD_PTD6__SDHC0_D4		0x843
    242 				ULP1_PAD_PTD7__SDHC0_D3		0x843
    243 				ULP1_PAD_PTD8__SDHC0_D2		0x843
    244 				ULP1_PAD_PTD9__SDHC0_D1		0x843
    245 				ULP1_PAD_PTD10__SDHC0_D0	0x843
    246 			>;
    247 		};
    248 
    249 		pinctrl_lpi2c7: lpi2c7grp {
    250 			fsl,pins = <
    251 				ULP1_PAD_PTF12__LPI2C7_SCL	0x527
    252 				ULP1_PAD_PTF13__LPI2C7_SDA	0x527
    253 			>;
    254 		};
    255 
    256 		pinctrl_lpspi3: lpspi3grp {
    257 			fsl,pins = <
    258 				ULP1_PAD_PTF16__LPSPI3_SIN      0x300
    259 				ULP1_PAD_PTF17__LPSPI3_SOUT     0x300
    260 				ULP1_PAD_PTF18__LPSPI3_SCK      0x300
    261 				ULP1_PAD_PTF19__LPSPI3_PCS0     0x300
    262 			>;
    263 		};
    264 
    265 		pinctrl_usb_otg1: usbotg1grp {
    266 			fsl,pins = <
    267 				ULP1_PAD_PTC0__PTC0		0x30100
    268 			>;
    269 		};
    270 
    271 		pinctrl_extcon_usb1: extcon1grp {
    272 			fsl,pins = <
    273 				ULP1_PAD_PTC8__PTC8		0x30103
    274 			>;
    275 		};
    276 
    277 		pinctrl_usdhc1: usdhc1grp {
    278 			fsl,pins = <
    279 				ULP1_PAD_PTE3__SDHC1_CMD	0x843
    280 				ULP1_PAD_PTE2__SDHC1_CLK	0x843
    281 				ULP1_PAD_PTE1__SDHC1_D0		0x843
    282 				ULP1_PAD_PTE0__SDHC1_D1		0x843
    283 				ULP1_PAD_PTE5__SDHC1_D2		0x843
    284 				ULP1_PAD_PTE4__SDHC1_D3		0x843
    285 			>;
    286 		};
    287 
    288 		pinctrl_usdhc1_rst: usdhc1grp_rst {
    289 			fsl,pins = <
    290 				ULP1_PAD_PTE11__PTE11			0x30100	/* USDHC1 RST */
    291 			>;
    292 		};
    293 
    294 		pinctrl_wifi: wifigrp {
    295 			fsl,pins = <
    296 				ULP1_PAD_PTE6__PTE6		0x43 /* WL_REG_ON */
    297 			>;
    298 		};
    299 	};
    300 };
    301 
    302 &lcdif {
    303 	status = "okay";
    304 	disp-dev = "mipi_dsi_northwest";
    305 	display = <&display0>;
    306 
    307 	display0: display {
    308 		bits-per-pixel = <16>;
    309 		bus-width = <24>;
    310 
    311 		display-timings {
    312 			native-mode = <&timing0>;
    313 			timing0: timing0 {
    314 			clock-frequency = <9200000>;
    315 			hactive = <480>;
    316 			vactive = <272>;
    317 			hfront-porch = <8>;
    318 			hback-porch = <4>;
    319 			hsync-len = <41>;
    320 			vback-porch = <2>;
    321 			vfront-porch = <4>;
    322 			vsync-len = <10>;
    323 
    324 			hsync-active = <0>;
    325 			vsync-active = <0>;
    326 			de-active = <1>;
    327 			pixelclk-active = <0>;
    328 			};
    329 		};
    330 	};
    331 };
    332 
    333 &lpi2c7 {
    334 	#address-cells = <1>;
    335 	#size-cells = <0>;
    336 	pinctrl-names = "default";
    337 	pinctrl-0 = <&pinctrl_lpi2c7>;
    338 };
    339 
    340 &lpi2c5 {
    341 	#address-cells = <1>;
    342 	#size-cells = <0>;
    343 	pinctrl-names = "default";
    344 	pinctrl-0 = <&pinctrl_lpi2c5>;
    345 	status = "okay";
    346 
    347 	fxas2100x@20 {
    348 		compatible = "fsl,fxas2100x";
    349 		reg = <0x20>;
    350 	};
    351 
    352 	fxos8700@1e {
    353 		compatible = "fsl,fxos8700";
    354 		reg = <0x1e>;
    355 	};
    356 
    357 	mpl3115@60 {
    358 		compatible = "fsl,mpl3115";
    359 		reg = <0x60>;
    360 	};
    361 };
    362 
    363 &lpspi3 {
    364 	#address-cells = <1>;
    365 	#size-cells = <0>;
    366 	pinctrl-names = "default";
    367 	pinctrl-0 = <&pinctrl_lpspi3>;
    368 	status = "okay";
    369 
    370 	spidev0: spi@0 {
    371 		reg = <0>;
    372 		compatible = "rohm,dh2228fv";
    373 		spi-max-frequency = <1000000>;
    374 	};
    375 };
    376 
    377 &mipi_dsi {
    378 	pinctrl-names = "default";
    379 	pinctrl-0 = <&pinctrl_mipi_dsi_reset>;
    380 	lcd_panel = "TRULY-WVGA-TFT3P5581E";
    381 	resets = <&mipi_dsi_reset>;
    382 	status = "okay";
    383 };
    384 
    385 &lpuart4 { /* console */
    386 	pinctrl-names = "default";
    387 	pinctrl-0 = <&pinctrl_lpuart4>;
    388 	status = "okay";
    389 };
    390 
    391 &lpuart6 { /* BT */
    392 	pinctrl-names = "default";
    393 	pinctrl-0 = <&pinctrl_lpuart6>;
    394 	status = "okay";
    395 };
    396 
    397 &lpuart7 { /* Uart test */
    398 	pinctrl-names = "default";
    399 	pinctrl-0 = <&pinctrl_lpuart7>;
    400 	status = "disabled";
    401 };
    402 
    403 &rpmsg{
    404 	status = "okay";
    405 };
    406 
    407 &usbotg1 {
    408 	vbus-supply = <&reg_usb_otg1_vbus>;
    409 	extcon = <0>, <&extcon_usb1>;
    410 	srp-disable;
    411 	hnp-disable;
    412 	adp-disable;
    413 	status = "okay";
    414 };
    415 
    416 &usdhc0 {
    417 	pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
    418 	pinctrl-0 = <&pinctrl_usdhc0>;
    419 	pinctrl-1 = <&pinctrl_usdhc0>;
    420 	pinctrl-2 = <&pinctrl_usdhc0>;
    421 	pinctrl-3 = <&pinctrl_usdhc0>;
    422 	cd-gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
    423 	vmmc-supply = <&reg_vsd_3v3>;
    424 	vqmmc-supply = <&vldo2_reg>;
    425 	status = "okay";
    426 };
    427