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