Merge https://gitlab.denx.de/u-boot/custodians/u-boot-clk
[oweals/u-boot.git] / arch / arm / dts / imx7-colibri-emmc.dts
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
13         aliases {
14                 u-boot,dm-pre-reloc;
15                 mmc0 = &usdhc3;
16                 mmc1 = &usdhc1;
17                 display1 = &lcdif;
18                 usb0 = &usbotg1; /* required for ums */
19         };
20
21         chosen {
22                 stdout-path = &uart1;
23         };
24
25         reg_5v0: regulator-5v0 {
26                 compatible = "regulator-fixed";
27                 regulator-name = "5V";
28                 regulator-min-microvolt = <5000000>;
29                 regulator-max-microvolt = <5000000>;
30         };
31
32         reg_usbh_vbus: regulator-usbh-vbus {
33                 compatible = "regulator-fixed";
34                 pinctrl-names = "default";
35                 pinctrl-0 = <&pinctrl_usbh_reg>;
36                 regulator-name = "VCC_USB[1-4]";
37                 regulator-min-microvolt = <5000000>;
38                 regulator-max-microvolt = <5000000>;
39                 gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
40                 vin-supply = <&reg_5v0>;
41         };
42 };
43
44 &usdhc3 {
45         pinctrl-names = "default";
46         pinctrl-0 = <&pinctrl_usdhc3>;
47         bus-width = <8>;
48         non-removable;
49         status = "okay";
50 };
51
52 &iomuxc {
53         pinctrl_usdhc3: usdhc3grp {
54                 fsl,pins = <
55                         MX7D_PAD_SD3_CMD__SD3_CMD               0x59
56                         MX7D_PAD_SD3_CLK__SD3_CLK               0x19
57                         MX7D_PAD_SD3_DATA0__SD3_DATA0           0x59
58                         MX7D_PAD_SD3_DATA1__SD3_DATA1           0x59
59                         MX7D_PAD_SD3_DATA2__SD3_DATA2           0x59
60                         MX7D_PAD_SD3_DATA3__SD3_DATA3           0x59
61                         MX7D_PAD_SD3_DATA4__SD3_DATA4           0x59
62                         MX7D_PAD_SD3_DATA5__SD3_DATA5           0x59
63                         MX7D_PAD_SD3_DATA6__SD3_DATA6           0x59
64                         MX7D_PAD_SD3_DATA7__SD3_DATA7           0x59
65                         MX7D_PAD_SD3_STROBE__SD3_STROBE         0x19
66                 >;
67         };
68
69         pinctrl_usbh_reg: gpio-usbh-vbus {
70                 fsl,pins = <
71                         MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14
72                 >;
73         };
74 };
75
76 /* Colibri USBC */
77 &usbotg1 {
78         /*
79          * usbotg1 on Colibri iMX7 can function in both host/otg modes.
80          * Gadget stack currently does not look at this at all while
81          * the host stack refuses to bind/load if it is not set to host
82          * (it obviously won't be enumerated during usb start invocation
83          * if dr_mode = "otg")
84          */
85         dr_mode = "host";
86         status = "okay";
87 };
88
89 /* Colibri USBH */
90 &usbotg2 {
91         dr_mode = "host";
92         vbus-supply = <&reg_usbh_vbus>;
93         status = "okay";
94 };