xref: /freebsd/sys/contrib/device-tree/src/arm/nxp/imx/imx6ull-colibri-iris.dtsi (revision 6580f5c38dd5b01aeeaed16b370f1a12423437f0)
1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2/*
3 * Copyright 2018-2022 Toradex
4 */
5
6/ {
7	chosen {
8		stdout-path = "serial0:115200n8";
9	};
10
11	gpio-keys {
12		compatible = "gpio-keys";
13		pinctrl-names = "default";
14		pinctrl-0 = <&pinctrl_snvs_gpiokeys>;
15
16		power {
17			label = "Wake-Up";
18			gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
19			linux,code = <KEY_WAKEUP>;
20			debounce-interval = <10>;
21			wakeup-source;
22		};
23	};
24
25	reg_3v3: regulator-3v3 {
26		compatible = "regulator-fixed";
27		regulator-name = "3.3V";
28		regulator-min-microvolt = <3300000>;
29		regulator-max-microvolt = <3300000>;
30	};
31
32	reg_5v0: regulator-5v0 {
33		compatible = "regulator-fixed";
34		regulator-name = "5V";
35		regulator-min-microvolt = <5000000>;
36		regulator-max-microvolt = <5000000>;
37	};
38
39	reg_usbh_vbus: regulator-usbh-vbus {
40		compatible = "regulator-fixed";
41		pinctrl-names = "default";
42		pinctrl-0 = <&pinctrl_usbh_reg>;
43		regulator-name = "VCC_USB[1-4]";
44		regulator-min-microvolt = <5000000>;
45		regulator-max-microvolt = <5000000>;
46		gpio = <&gpio1 2 GPIO_ACTIVE_LOW>;
47		vin-supply = <&reg_5v0>;
48	};
49};
50
51&adc1 {
52	status = "okay";
53};
54
55&gpio1 {
56	/*
57	 * uart25_tx_on turns the UART transceiver on. If one wants to turn the
58	 * transceiver off, that property has to be deleted and the gpio handled
59	 * in userspace.
60	 * The same applies to uart1_tx_on.
61	 */
62	uart25_tx_on-hog {
63		gpio-hog;
64		gpios = <15 0>;
65		output-high;
66	};
67};
68
69&gpio2 {
70	uart1_tx_on-hog {
71		gpio-hog;
72		gpios = <7 0>;
73		output-high;
74	};
75};
76
77&i2c1 {
78	status = "okay";
79
80	/* M41T0M6 real time clock on carrier board */
81	m41t0m6: rtc@68 {
82		compatible = "st,m41t0";
83		reg = <0x68>;
84	};
85};
86
87/* PWM <A> */
88&pwm4 {
89	status = "okay";
90};
91
92/* PWM <B> */
93&pwm5 {
94	status = "okay";
95};
96
97/* PWM <C> */
98&pwm6 {
99	status = "okay";
100};
101
102/* PWM <D> */
103&pwm7 {
104	status = "okay";
105};
106
107&uart1 {
108	status = "okay";
109};
110
111&uart2 {
112	status = "okay";
113};
114
115&uart5 {
116	status = "okay";
117};
118
119&usbotg1 {
120	disable-over-current;
121	vbus-supply = <&reg_usbh_vbus>;
122	status = "okay";
123};
124
125&usbotg2 {
126	disable-over-current;
127	vbus-supply = <&reg_usbh_vbus>;
128	status = "okay";
129};
130
131&usdhc1 {
132	vmmc-supply = <&reg_3v3>;
133	status = "okay";
134};
135