xref: /freebsd-src/sys/contrib/device-tree/src/arm/nxp/imx/imx6q-apalis-ixora.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright 2014-2022 Toradex
4*f126890aSEmmanuel Vadot * Copyright 2012 Freescale Semiconductor, Inc.
5*f126890aSEmmanuel Vadot * Copyright 2011 Linaro Ltd.
6*f126890aSEmmanuel Vadot */
7*f126890aSEmmanuel Vadot
8*f126890aSEmmanuel Vadot/dts-v1/;
9*f126890aSEmmanuel Vadot
10*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
12*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
13*f126890aSEmmanuel Vadot#include "imx6q.dtsi"
14*f126890aSEmmanuel Vadot#include "imx6qdl-apalis.dtsi"
15*f126890aSEmmanuel Vadot
16*f126890aSEmmanuel Vadot/ {
17*f126890aSEmmanuel Vadot	model = "Toradex Apalis iMX6Q/D Module on Ixora Carrier Board";
18*f126890aSEmmanuel Vadot	compatible = "toradex,apalis_imx6q-ixora", "toradex,apalis_imx6q",
19*f126890aSEmmanuel Vadot		     "fsl,imx6q";
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadot	aliases {
22*f126890aSEmmanuel Vadot		i2c0 = &i2c1;
23*f126890aSEmmanuel Vadot		i2c1 = &i2c3;
24*f126890aSEmmanuel Vadot		i2c2 = &i2c2;
25*f126890aSEmmanuel Vadot		rtc0 = &rtc_i2c;
26*f126890aSEmmanuel Vadot		rtc1 = &snvs_rtc;
27*f126890aSEmmanuel Vadot	};
28*f126890aSEmmanuel Vadot
29*f126890aSEmmanuel Vadot	chosen {
30*f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
31*f126890aSEmmanuel Vadot	};
32*f126890aSEmmanuel Vadot
33*f126890aSEmmanuel Vadot	leds {
34*f126890aSEmmanuel Vadot		compatible = "gpio-leds";
35*f126890aSEmmanuel Vadot		pinctrl-names = "default";
36*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_leds_ixora>;
37*f126890aSEmmanuel Vadot
38*f126890aSEmmanuel Vadot		led4-green {
39*f126890aSEmmanuel Vadot			gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
40*f126890aSEmmanuel Vadot			label = "LED_4_GREEN";
41*f126890aSEmmanuel Vadot		};
42*f126890aSEmmanuel Vadot
43*f126890aSEmmanuel Vadot		led4-red {
44*f126890aSEmmanuel Vadot			gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
45*f126890aSEmmanuel Vadot			label = "LED_4_RED";
46*f126890aSEmmanuel Vadot		};
47*f126890aSEmmanuel Vadot
48*f126890aSEmmanuel Vadot		led5-green {
49*f126890aSEmmanuel Vadot			gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
50*f126890aSEmmanuel Vadot			label = "LED_5_GREEN";
51*f126890aSEmmanuel Vadot		};
52*f126890aSEmmanuel Vadot
53*f126890aSEmmanuel Vadot		led5-red {
54*f126890aSEmmanuel Vadot			gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>;
55*f126890aSEmmanuel Vadot			label = "LED_5_RED";
56*f126890aSEmmanuel Vadot		};
57*f126890aSEmmanuel Vadot	};
58*f126890aSEmmanuel Vadot};
59*f126890aSEmmanuel Vadot
60*f126890aSEmmanuel Vadot&can1 {
61*f126890aSEmmanuel Vadot	status = "okay";
62*f126890aSEmmanuel Vadot};
63*f126890aSEmmanuel Vadot
64*f126890aSEmmanuel Vadot&can2 {
65*f126890aSEmmanuel Vadot	status = "okay";
66*f126890aSEmmanuel Vadot};
67*f126890aSEmmanuel Vadot
68*f126890aSEmmanuel Vadot/* I2C1_SDA/SCL on MXM3 209/211 (e.g. RTC on carrier board) */
69*f126890aSEmmanuel Vadot&i2c1 {
70*f126890aSEmmanuel Vadot	status = "okay";
71*f126890aSEmmanuel Vadot
72*f126890aSEmmanuel Vadot	eeprom@50 {
73*f126890aSEmmanuel Vadot		compatible = "atmel,24c02";
74*f126890aSEmmanuel Vadot		reg = <0x50>;
75*f126890aSEmmanuel Vadot	};
76*f126890aSEmmanuel Vadot
77*f126890aSEmmanuel Vadot	/* M41T0M6 real time clock on carrier board */
78*f126890aSEmmanuel Vadot	rtc_i2c: rtc@68 {
79*f126890aSEmmanuel Vadot		compatible = "st,m41t0";
80*f126890aSEmmanuel Vadot		reg = <0x68>;
81*f126890aSEmmanuel Vadot	};
82*f126890aSEmmanuel Vadot};
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadot/*
85*f126890aSEmmanuel Vadot * I2C3_SDA/SCL (CAM) on MXM3 pin 201/203 (e.g. camera sensor on carrier
86*f126890aSEmmanuel Vadot * board)
87*f126890aSEmmanuel Vadot */
88*f126890aSEmmanuel Vadot&i2c3 {
89*f126890aSEmmanuel Vadot	status = "okay";
90*f126890aSEmmanuel Vadot};
91*f126890aSEmmanuel Vadot
92*f126890aSEmmanuel Vadot&pcie {
93*f126890aSEmmanuel Vadot	pinctrl-names = "default";
94*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_reset_moci>;
95*f126890aSEmmanuel Vadot	/* active-high meaning opposite of regular PERST# active-low polarity */
96*f126890aSEmmanuel Vadot	reset-gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>;
97*f126890aSEmmanuel Vadot	reset-gpio-active-high;
98*f126890aSEmmanuel Vadot	status = "okay";
99*f126890aSEmmanuel Vadot};
100*f126890aSEmmanuel Vadot
101*f126890aSEmmanuel Vadot&pwm1 {
102*f126890aSEmmanuel Vadot	status = "okay";
103*f126890aSEmmanuel Vadot};
104*f126890aSEmmanuel Vadot
105*f126890aSEmmanuel Vadot&pwm2 {
106*f126890aSEmmanuel Vadot	status = "okay";
107*f126890aSEmmanuel Vadot};
108*f126890aSEmmanuel Vadot
109*f126890aSEmmanuel Vadot&pwm3 {
110*f126890aSEmmanuel Vadot	status = "okay";
111*f126890aSEmmanuel Vadot};
112*f126890aSEmmanuel Vadot
113*f126890aSEmmanuel Vadot&pwm4 {
114*f126890aSEmmanuel Vadot	status = "okay";
115*f126890aSEmmanuel Vadot};
116*f126890aSEmmanuel Vadot
117*f126890aSEmmanuel Vadot&reg_usb_host_vbus {
118*f126890aSEmmanuel Vadot	status = "okay";
119*f126890aSEmmanuel Vadot};
120*f126890aSEmmanuel Vadot
121*f126890aSEmmanuel Vadot&reg_usb_otg_vbus {
122*f126890aSEmmanuel Vadot	status = "okay";
123*f126890aSEmmanuel Vadot};
124*f126890aSEmmanuel Vadot
125*f126890aSEmmanuel Vadot&sata {
126*f126890aSEmmanuel Vadot	status = "okay";
127*f126890aSEmmanuel Vadot};
128*f126890aSEmmanuel Vadot
129*f126890aSEmmanuel Vadot&sound_spdif {
130*f126890aSEmmanuel Vadot	status = "okay";
131*f126890aSEmmanuel Vadot};
132*f126890aSEmmanuel Vadot
133*f126890aSEmmanuel Vadot&spdif {
134*f126890aSEmmanuel Vadot	status = "okay";
135*f126890aSEmmanuel Vadot};
136*f126890aSEmmanuel Vadot
137*f126890aSEmmanuel Vadot&uart1 {
138*f126890aSEmmanuel Vadot	status = "okay";
139*f126890aSEmmanuel Vadot};
140*f126890aSEmmanuel Vadot
141*f126890aSEmmanuel Vadot&uart2 {
142*f126890aSEmmanuel Vadot	status = "okay";
143*f126890aSEmmanuel Vadot};
144*f126890aSEmmanuel Vadot
145*f126890aSEmmanuel Vadot&uart4 {
146*f126890aSEmmanuel Vadot	status = "okay";
147*f126890aSEmmanuel Vadot};
148*f126890aSEmmanuel Vadot
149*f126890aSEmmanuel Vadot&uart5 {
150*f126890aSEmmanuel Vadot	status = "okay";
151*f126890aSEmmanuel Vadot};
152*f126890aSEmmanuel Vadot
153*f126890aSEmmanuel Vadot&usbh1 {
154*f126890aSEmmanuel Vadot	disable-over-current;
155*f126890aSEmmanuel Vadot	vbus-supply = <&reg_usb_host_vbus>;
156*f126890aSEmmanuel Vadot	status = "okay";
157*f126890aSEmmanuel Vadot};
158*f126890aSEmmanuel Vadot
159*f126890aSEmmanuel Vadot&usbotg {
160*f126890aSEmmanuel Vadot	disable-over-current;
161*f126890aSEmmanuel Vadot	vbus-supply = <&reg_usb_otg_vbus>;
162*f126890aSEmmanuel Vadot	status = "okay";
163*f126890aSEmmanuel Vadot};
164*f126890aSEmmanuel Vadot
165*f126890aSEmmanuel Vadot/* SD1 */
166*f126890aSEmmanuel Vadot&usdhc2 {
167*f126890aSEmmanuel Vadot	cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
168*f126890aSEmmanuel Vadot	pinctrl-names = "default";
169*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc2 &pinctrl_sd_cd>;
170*f126890aSEmmanuel Vadot	status = "okay";
171*f126890aSEmmanuel Vadot};
172*f126890aSEmmanuel Vadot
173*f126890aSEmmanuel Vadot&iomuxc {
174*f126890aSEmmanuel Vadot	pinctrl_leds_ixora: ledsixoragrp {
175*f126890aSEmmanuel Vadot		fsl,pins = <
176*f126890aSEmmanuel Vadot			MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x1b0b0
177*f126890aSEmmanuel Vadot			MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x1b0b0
178*f126890aSEmmanuel Vadot			MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x1b0b0
179*f126890aSEmmanuel Vadot			MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x1b0b0
180*f126890aSEmmanuel Vadot		>;
181*f126890aSEmmanuel Vadot	};
182*f126890aSEmmanuel Vadot};
183