Stefan Agner | dfe41da | 2019-01-08 12:42:29 +0100 | [diff] [blame] | 1 | // SPDX-License-Identifier: GPL-2.0+ OR X11 |
| 2 | /* |
| 3 | * Copyright 2019 Toradex AG |
| 4 | */ |
| 5 | |
| 6 | /dts-v1/; |
| 7 | #include "imx7-colibri.dtsi" |
| 8 | |
| 9 | / { |
| 10 | model = "Toradex Colibri iMX7D 1GB (eMMC)"; |
| 11 | compatible = "toradex,imx7d-colibri-emmc", "fsl,imx7d"; |
| 12 | |
Stefan Agner | c9fc1f1 | 2019-01-08 12:42:32 +0100 | [diff] [blame] | 13 | aliases { |
| 14 | mmc0 = &usdhc3; |
| 15 | mmc1 = &usdhc1; |
Igor Opaniuk | 47db6e4 | 2019-05-10 12:35:29 +0300 | [diff] [blame^] | 16 | usb0 = &usbotg1; /* required for ums */ |
Stefan Agner | c9fc1f1 | 2019-01-08 12:42:32 +0100 | [diff] [blame] | 17 | }; |
| 18 | |
Stefan Agner | dfe41da | 2019-01-08 12:42:29 +0100 | [diff] [blame] | 19 | chosen { |
| 20 | stdout-path = &uart1; |
| 21 | }; |
Igor Opaniuk | 47db6e4 | 2019-05-10 12:35:29 +0300 | [diff] [blame^] | 22 | |
| 23 | reg_5v0: regulator-5v0 { |
| 24 | compatible = "regulator-fixed"; |
| 25 | regulator-name = "5V"; |
| 26 | regulator-min-microvolt = <5000000>; |
| 27 | regulator-max-microvolt = <5000000>; |
| 28 | }; |
| 29 | |
| 30 | reg_usbh_vbus: regulator-usbh-vbus { |
| 31 | compatible = "regulator-fixed"; |
| 32 | pinctrl-names = "default"; |
| 33 | pinctrl-0 = <&pinctrl_usbh_reg>; |
| 34 | regulator-name = "VCC_USB[1-4]"; |
| 35 | regulator-min-microvolt = <5000000>; |
| 36 | regulator-max-microvolt = <5000000>; |
| 37 | gpio = <&gpio4 7 GPIO_ACTIVE_LOW>; |
| 38 | vin-supply = <®_5v0>; |
| 39 | }; |
Stefan Agner | dfe41da | 2019-01-08 12:42:29 +0100 | [diff] [blame] | 40 | }; |
Stefan Agner | c9fc1f1 | 2019-01-08 12:42:32 +0100 | [diff] [blame] | 41 | |
| 42 | &usdhc3 { |
| 43 | pinctrl-names = "default"; |
| 44 | pinctrl-0 = <&pinctrl_usdhc3>; |
| 45 | bus-width = <8>; |
| 46 | non-removable; |
| 47 | status = "okay"; |
| 48 | }; |
| 49 | |
| 50 | &iomuxc { |
| 51 | pinctrl_usdhc3: usdhc3grp { |
| 52 | fsl,pins = < |
| 53 | MX7D_PAD_SD3_CMD__SD3_CMD 0x59 |
| 54 | MX7D_PAD_SD3_CLK__SD3_CLK 0x19 |
| 55 | MX7D_PAD_SD3_DATA0__SD3_DATA0 0x59 |
| 56 | MX7D_PAD_SD3_DATA1__SD3_DATA1 0x59 |
| 57 | MX7D_PAD_SD3_DATA2__SD3_DATA2 0x59 |
| 58 | MX7D_PAD_SD3_DATA3__SD3_DATA3 0x59 |
| 59 | MX7D_PAD_SD3_DATA4__SD3_DATA4 0x59 |
| 60 | MX7D_PAD_SD3_DATA5__SD3_DATA5 0x59 |
| 61 | MX7D_PAD_SD3_DATA6__SD3_DATA6 0x59 |
| 62 | MX7D_PAD_SD3_DATA7__SD3_DATA7 0x59 |
| 63 | MX7D_PAD_SD3_STROBE__SD3_STROBE 0x19 |
| 64 | >; |
| 65 | }; |
Igor Opaniuk | 47db6e4 | 2019-05-10 12:35:29 +0300 | [diff] [blame^] | 66 | |
| 67 | pinctrl_usbh_reg: gpio-usbh-vbus { |
| 68 | fsl,pins = < |
| 69 | MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14 |
| 70 | >; |
| 71 | }; |
Stefan Agner | c9fc1f1 | 2019-01-08 12:42:32 +0100 | [diff] [blame] | 72 | }; |
Igor Opaniuk | 47db6e4 | 2019-05-10 12:35:29 +0300 | [diff] [blame^] | 73 | |
| 74 | /* Colibri USBC */ |
| 75 | &usbotg1 { |
| 76 | /* |
| 77 | * usbotg1 on Colibri iMX7 can function in both host/otg modes. |
| 78 | * Gadget stack currently does not look at this at all while |
| 79 | * the host stack refuses to bind/load if it is not set to host |
| 80 | * (it obviously won't be enumerated during usb start invocation |
| 81 | * if dr_mode = "otg") |
| 82 | */ |
| 83 | dr_mode = "host"; |
| 84 | status = "okay"; |
| 85 | }; |
| 86 | |
| 87 | /* Colibri USBH */ |
| 88 | &usbotg2 { |
| 89 | dr_mode = "host"; |
| 90 | vbus-supply = <®_usbh_vbus>; |
| 91 | status = "okay"; |
| 92 | }; |