• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 iMX7S/D";
11	compatible = "toradex,imx7-colibri", "fsl,imx7";
12
13	chosen {
14		stdout-path = &uart1;
15	};
16
17	aliases {
18		usb0 = &usbotg1; /* required for ums */
19	};
20
21	reg_5v0: regulator-5v0 {
22		compatible = "regulator-fixed";
23		regulator-name = "5V";
24		regulator-min-microvolt = <5000000>;
25		regulator-max-microvolt = <5000000>;
26	};
27
28	reg_usbh_vbus: regulator-usbh-vbus {
29		compatible = "regulator-fixed";
30		pinctrl-names = "default";
31		pinctrl-0 = <&pinctrl_usbh_reg>;
32		regulator-name = "VCC_USB[1-4]";
33		regulator-min-microvolt = <5000000>;
34		regulator-max-microvolt = <5000000>;
35		gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
36		vin-supply = <&reg_5v0>;
37	};
38};
39
40&gpmi {
41	pinctrl-names = "default";
42	pinctrl-0 = <&pinctrl_gpmi_nand>;
43	fsl,use-minimum-ecc;
44	nand-on-flash-bbt;
45	nand-ecc-mode = "hw";
46	status = "okay";
47};
48
49&iomuxc {
50	pinctrl_gpmi_nand: gpmi-nand-grp {
51		fsl,pins = <
52			MX7D_PAD_SD3_CLK__NAND_CLE		0x71
53			MX7D_PAD_SD3_CMD__NAND_ALE		0x71
54			MX7D_PAD_SAI1_TX_BCLK__NAND_CE0_B	0x71
55			MX7D_PAD_SAI1_TX_DATA__NAND_READY_B	0x74
56			MX7D_PAD_SD3_STROBE__NAND_RE_B		0x71
57			MX7D_PAD_SD3_RESET_B__NAND_WE_B		0x71
58			MX7D_PAD_SD3_DATA0__NAND_DATA00		0x71
59			MX7D_PAD_SD3_DATA1__NAND_DATA01		0x71
60			MX7D_PAD_SD3_DATA2__NAND_DATA02		0x71
61			MX7D_PAD_SD3_DATA3__NAND_DATA03		0x71
62			MX7D_PAD_SD3_DATA4__NAND_DATA04		0x71
63			MX7D_PAD_SD3_DATA5__NAND_DATA05		0x71
64			MX7D_PAD_SD3_DATA6__NAND_DATA06		0x71
65			MX7D_PAD_SD3_DATA7__NAND_DATA07		0x71
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};
95