xref: /freebsd-src/sys/contrib/device-tree/src/arm/nxp/imx/imx7-colibri-iris.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright 2022 Toradex
4*f126890aSEmmanuel Vadot */
5*f126890aSEmmanuel Vadot
6*f126890aSEmmanuel Vadot/* Colibri AD0 to AD3 */
7*f126890aSEmmanuel Vadot&adc1 {
8*f126890aSEmmanuel Vadot	status = "okay";
9*f126890aSEmmanuel Vadot};
10*f126890aSEmmanuel Vadot
11*f126890aSEmmanuel Vadot/*
12*f126890aSEmmanuel Vadot * The Atmel maxtouch controller uses SODIMM 28/30, also used for PWM<B>, PWM<C>, aka pwm2, pwm3.
13*f126890aSEmmanuel Vadot * So if you enable following capacitive touch controller, disable pwm2/pwm3 first.
14*f126890aSEmmanuel Vadot */
15*f126890aSEmmanuel Vadot&atmel_mxt_ts {
16*f126890aSEmmanuel Vadot	interrupt-parent = <&gpio1>;
17*f126890aSEmmanuel Vadot	interrupts = <9 IRQ_TYPE_EDGE_FALLING>;		/* SODIMM 28 / INT */
18*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_atmel_adapter>;
19*f126890aSEmmanuel Vadot	reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;	/* SODIMM 30 / RST */
20*f126890aSEmmanuel Vadot};
21*f126890aSEmmanuel Vadot
22*f126890aSEmmanuel Vadot/* Colibri SSP */
23*f126890aSEmmanuel Vadot&ecspi3 {
24*f126890aSEmmanuel Vadot	status = "okay";
25*f126890aSEmmanuel Vadot};
26*f126890aSEmmanuel Vadot
27*f126890aSEmmanuel Vadot/* Colibri Fast Ethernet */
28*f126890aSEmmanuel Vadot&fec1 {
29*f126890aSEmmanuel Vadot	status = "okay";
30*f126890aSEmmanuel Vadot};
31*f126890aSEmmanuel Vadot
32*f126890aSEmmanuel Vadot&gpio2 {
33*f126890aSEmmanuel Vadot	/*
34*f126890aSEmmanuel Vadot	 * uart25 turns the UART transceiver for UART2 and 5 on. If one wants to turn the
35*f126890aSEmmanuel Vadot	 * transceiver off, that property has to be deleted and the gpio handled in userspace.
36*f126890aSEmmanuel Vadot	 * The same applies to uart1_tx_on where the UART1 transceiver is turned on.
37*f126890aSEmmanuel Vadot	 */
38*f126890aSEmmanuel Vadot	uart25-tx-on-hog {
39*f126890aSEmmanuel Vadot		gpio-hog;
40*f126890aSEmmanuel Vadot		gpios = <27 GPIO_ACTIVE_HIGH>; /* SODIMM 104 */
41*f126890aSEmmanuel Vadot		output-high;
42*f126890aSEmmanuel Vadot	};
43*f126890aSEmmanuel Vadot};
44*f126890aSEmmanuel Vadot
45*f126890aSEmmanuel Vadot&gpio5 {
46*f126890aSEmmanuel Vadot	uart1-tx-on-hog {
47*f126890aSEmmanuel Vadot		gpio-hog;
48*f126890aSEmmanuel Vadot		gpios = <17 GPIO_ACTIVE_HIGH>; /* SODIMM 102 */
49*f126890aSEmmanuel Vadot		output-high;
50*f126890aSEmmanuel Vadot	};
51*f126890aSEmmanuel Vadot};
52*f126890aSEmmanuel Vadot
53*f126890aSEmmanuel Vadot/* Colibri I2C: I2C3_SDA/SCL on SODIMM 194/196 */
54*f126890aSEmmanuel Vadot&i2c4 {
55*f126890aSEmmanuel Vadot	status = "okay";
56*f126890aSEmmanuel Vadot};
57*f126890aSEmmanuel Vadot
58*f126890aSEmmanuel Vadot/* Colibri PWM<A> */
59*f126890aSEmmanuel Vadot&pwm1 {
60*f126890aSEmmanuel Vadot	status = "okay";
61*f126890aSEmmanuel Vadot};
62*f126890aSEmmanuel Vadot
63*f126890aSEmmanuel Vadot/* Colibri PWM<B> */
64*f126890aSEmmanuel Vadot&pwm2 {
65*f126890aSEmmanuel Vadot	/* The pwm2 should be disabled to enable atmel_mxt_ts touchscreen for adapter. */
66*f126890aSEmmanuel Vadot	status = "okay";
67*f126890aSEmmanuel Vadot};
68*f126890aSEmmanuel Vadot
69*f126890aSEmmanuel Vadot/* Colibri PWM<C> */
70*f126890aSEmmanuel Vadot&pwm3 {
71*f126890aSEmmanuel Vadot	/* The pwm3 should be disabled to enable atmel_mxt_ts touchscreen for adapter. */
72*f126890aSEmmanuel Vadot	status = "okay";
73*f126890aSEmmanuel Vadot};
74*f126890aSEmmanuel Vadot
75*f126890aSEmmanuel Vadot/* Colibri PWM<D> */
76*f126890aSEmmanuel Vadot&pwm4 {
77*f126890aSEmmanuel Vadot	status = "okay";
78*f126890aSEmmanuel Vadot};
79*f126890aSEmmanuel Vadot
80*f126890aSEmmanuel Vadot/* M41T0M6 real time clock */
81*f126890aSEmmanuel Vadot&rtc {
82*f126890aSEmmanuel Vadot	status = "okay";
83*f126890aSEmmanuel Vadot};
84*f126890aSEmmanuel Vadot
85*f126890aSEmmanuel Vadot/* Colibri UART_A */
86*f126890aSEmmanuel Vadot&uart1 {
87*f126890aSEmmanuel Vadot	status = "okay";
88*f126890aSEmmanuel Vadot};
89*f126890aSEmmanuel Vadot
90*f126890aSEmmanuel Vadot/* Colibri UART_B */
91*f126890aSEmmanuel Vadot&uart2 {
92*f126890aSEmmanuel Vadot	status = "okay";
93*f126890aSEmmanuel Vadot};
94*f126890aSEmmanuel Vadot
95*f126890aSEmmanuel Vadot/* Colibri UART_C */
96*f126890aSEmmanuel Vadot&uart3 {
97*f126890aSEmmanuel Vadot	status = "okay";
98*f126890aSEmmanuel Vadot};
99*f126890aSEmmanuel Vadot
100*f126890aSEmmanuel Vadot/* Colibri USBC */
101*f126890aSEmmanuel Vadot&usbotg1 {
102*f126890aSEmmanuel Vadot	disable-over-current;
103*f126890aSEmmanuel Vadot	status = "okay";
104*f126890aSEmmanuel Vadot};
105*f126890aSEmmanuel Vadot
106*f126890aSEmmanuel Vadot/* Colibri MMC/SD */
107*f126890aSEmmanuel Vadot&usdhc1 {
108*f126890aSEmmanuel Vadot	status = "okay";
109*f126890aSEmmanuel Vadot};
110