1*6f30b27cSTim Harvey// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*6f30b27cSTim Harvey/*
3*6f30b27cSTim Harvey * Copyright 2020 Gateworks Corporation
4*6f30b27cSTim Harvey */
5*6f30b27cSTim Harvey
6*6f30b27cSTim Harvey#include <dt-bindings/gpio/gpio.h>
7*6f30b27cSTim Harvey#include <dt-bindings/leds/common.h>
8*6f30b27cSTim Harvey
9*6f30b27cSTim Harvey/ {
10*6f30b27cSTim Harvey	aliases {
11*6f30b27cSTim Harvey		usb0 = &usbotg1;
12*6f30b27cSTim Harvey		usb1 = &usbotg2;
13*6f30b27cSTim Harvey	};
14*6f30b27cSTim Harvey
15*6f30b27cSTim Harvey	led-controller {
16*6f30b27cSTim Harvey		compatible = "gpio-leds";
17*6f30b27cSTim Harvey		pinctrl-names = "default";
18*6f30b27cSTim Harvey		pinctrl-0 = <&pinctrl_gpio_leds>;
19*6f30b27cSTim Harvey
20*6f30b27cSTim Harvey		led-0 {
21*6f30b27cSTim Harvey			function = LED_FUNCTION_STATUS;
22*6f30b27cSTim Harvey			color = <LED_COLOR_ID_GREEN>;
23*6f30b27cSTim Harvey			gpios = <&gpio5 5 GPIO_ACTIVE_HIGH>;
24*6f30b27cSTim Harvey			default-state = "on";
25*6f30b27cSTim Harvey			linux,default-trigger = "heartbeat";
26*6f30b27cSTim Harvey		};
27*6f30b27cSTim Harvey
28*6f30b27cSTim Harvey		led-1 {
29*6f30b27cSTim Harvey			function = LED_FUNCTION_STATUS;
30*6f30b27cSTim Harvey			color = <LED_COLOR_ID_RED>;
31*6f30b27cSTim Harvey			gpios = <&gpio5 4 GPIO_ACTIVE_HIGH>;
32*6f30b27cSTim Harvey			default-state = "off";
33*6f30b27cSTim Harvey		};
34*6f30b27cSTim Harvey	};
35*6f30b27cSTim Harvey
36*6f30b27cSTim Harvey	pps {
37*6f30b27cSTim Harvey		compatible = "pps-gpio";
38*6f30b27cSTim Harvey		pinctrl-names = "default";
39*6f30b27cSTim Harvey		pinctrl-0 = <&pinctrl_pps>;
40*6f30b27cSTim Harvey		gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
41*6f30b27cSTim Harvey		status = "okay";
42*6f30b27cSTim Harvey	};
43*6f30b27cSTim Harvey
44*6f30b27cSTim Harvey	reg_usb_otg1_vbus: regulator-usb-otg1 {
45*6f30b27cSTim Harvey		pinctrl-names = "default";
46*6f30b27cSTim Harvey		pinctrl-0 = <&pinctrl_reg_usb1_en>;
47*6f30b27cSTim Harvey		compatible = "regulator-fixed";
48*6f30b27cSTim Harvey		regulator-name = "usb_otg1_vbus";
49*6f30b27cSTim Harvey		gpio = <&gpio1 12 GPIO_ACTIVE_HIGH>;
50*6f30b27cSTim Harvey		enable-active-high;
51*6f30b27cSTim Harvey		regulator-min-microvolt = <5000000>;
52*6f30b27cSTim Harvey		regulator-max-microvolt = <5000000>;
53*6f30b27cSTim Harvey	};
54*6f30b27cSTim Harvey};
55*6f30b27cSTim Harvey
56*6f30b27cSTim Harvey/* off-board header */
57*6f30b27cSTim Harvey&ecspi2 {
58*6f30b27cSTim Harvey	pinctrl-names = "default";
59*6f30b27cSTim Harvey	pinctrl-0 = <&pinctrl_spi2>;
60*6f30b27cSTim Harvey	cs-gpios = <&gpio5 13 GPIO_ACTIVE_HIGH>;
61*6f30b27cSTim Harvey	status = "okay";
62*6f30b27cSTim Harvey};
63*6f30b27cSTim Harvey
64*6f30b27cSTim Harvey&i2c2 {
65*6f30b27cSTim Harvey	clock-frequency = <400000>;
66*6f30b27cSTim Harvey	pinctrl-names = "default";
67*6f30b27cSTim Harvey	pinctrl-0 = <&pinctrl_i2c2>;
68*6f30b27cSTim Harvey	status = "okay";
69*6f30b27cSTim Harvey
70*6f30b27cSTim Harvey	accelerometer@19 {
71*6f30b27cSTim Harvey		pinctrl-names = "default";
72*6f30b27cSTim Harvey		pinctrl-0 = <&pinctrl_accel>;
73*6f30b27cSTim Harvey		compatible = "st,lis2de12";
74*6f30b27cSTim Harvey		reg = <0x19>;
75*6f30b27cSTim Harvey		st,drdy-int-pin = <1>;
76*6f30b27cSTim Harvey		interrupt-parent = <&gpio4>;
77*6f30b27cSTim Harvey		interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
78*6f30b27cSTim Harvey		interrupt-names = "INT1";
79*6f30b27cSTim Harvey	};
80*6f30b27cSTim Harvey};
81*6f30b27cSTim Harvey
82*6f30b27cSTim Harvey/* off-board header */
83*6f30b27cSTim Harvey&i2c3 {
84*6f30b27cSTim Harvey	clock-frequency = <400000>;
85*6f30b27cSTim Harvey	pinctrl-names = "default";
86*6f30b27cSTim Harvey	pinctrl-0 = <&pinctrl_i2c3>;
87*6f30b27cSTim Harvey	status = "okay";
88*6f30b27cSTim Harvey};
89*6f30b27cSTim Harvey
90*6f30b27cSTim Harvey/* GPS */
91*6f30b27cSTim Harvey&uart1 {
92*6f30b27cSTim Harvey	pinctrl-names = "default";
93*6f30b27cSTim Harvey	pinctrl-0 = <&pinctrl_uart1>;
94*6f30b27cSTim Harvey	status = "okay";
95*6f30b27cSTim Harvey};
96*6f30b27cSTim Harvey
97*6f30b27cSTim Harvey/* off-board header */
98*6f30b27cSTim Harvey&uart3 {
99*6f30b27cSTim Harvey	pinctrl-names = "default";
100*6f30b27cSTim Harvey	pinctrl-0 = <&pinctrl_uart3>;
101*6f30b27cSTim Harvey	status = "okay";
102*6f30b27cSTim Harvey};
103*6f30b27cSTim Harvey
104*6f30b27cSTim Harvey&usbotg1 {
105*6f30b27cSTim Harvey	dr_mode = "otg";
106*6f30b27cSTim Harvey	vbus-supply = <&reg_usb_otg1_vbus>;
107*6f30b27cSTim Harvey	status = "okay";
108*6f30b27cSTim Harvey};
109*6f30b27cSTim Harvey
110*6f30b27cSTim Harvey&usbotg2 {
111*6f30b27cSTim Harvey	dr_mode = "host";
112*6f30b27cSTim Harvey	status = "okay";
113*6f30b27cSTim Harvey};
114*6f30b27cSTim Harvey
115*6f30b27cSTim Harvey&iomuxc {
116*6f30b27cSTim Harvey	pinctrl-names = "default";
117*6f30b27cSTim Harvey	pinctrl-0 = <&pinctrl_hog>;
118*6f30b27cSTim Harvey
119*6f30b27cSTim Harvey	pinctrl_hog: hoggrp {
120*6f30b27cSTim Harvey		fsl,pins = <
121*6f30b27cSTim Harvey			MX8MM_IOMUXC_SPDIF_TX_GPIO5_IO3		0x40000041 /* PLUG_TEST */
122*6f30b27cSTim Harvey			MX8MM_IOMUXC_GPIO1_IO06_GPIO1_IO6	0x40000041 /* PCI_USBSEL */
123*6f30b27cSTim Harvey			MX8MM_IOMUXC_SAI1_RXD5_GPIO4_IO7	0x40000041 /* PCIE_WDIS# */
124*6f30b27cSTim Harvey			MX8MM_IOMUXC_GPIO1_IO07_GPIO1_IO7	0x40000041 /* DIO0 */
125*6f30b27cSTim Harvey			MX8MM_IOMUXC_GPIO1_IO09_GPIO1_IO9	0x40000041 /* DIO1 */
126*6f30b27cSTim Harvey			MX8MM_IOMUXC_SAI1_RXD1_GPIO4_IO3	0x40000041 /* DIO2 */
127*6f30b27cSTim Harvey			MX8MM_IOMUXC_SAI1_RXD2_GPIO4_IO4	0x40000041 /* DIO2 */
128*6f30b27cSTim Harvey		>;
129*6f30b27cSTim Harvey	};
130*6f30b27cSTim Harvey
131*6f30b27cSTim Harvey	pinctrl_accel: accelgrp {
132*6f30b27cSTim Harvey		fsl,pins = <
133*6f30b27cSTim Harvey			MX8MM_IOMUXC_SAI1_RXD3_GPIO4_IO5	0x159
134*6f30b27cSTim Harvey		>;
135*6f30b27cSTim Harvey	};
136*6f30b27cSTim Harvey
137*6f30b27cSTim Harvey	pinctrl_gpio_leds: gpioledgrp {
138*6f30b27cSTim Harvey		fsl,pins = <
139*6f30b27cSTim Harvey			MX8MM_IOMUXC_SPDIF_EXT_CLK_GPIO5_IO5	0x19
140*6f30b27cSTim Harvey			MX8MM_IOMUXC_SPDIF_RX_GPIO5_IO4		0x19
141*6f30b27cSTim Harvey		>;
142*6f30b27cSTim Harvey	};
143*6f30b27cSTim Harvey
144*6f30b27cSTim Harvey	pinctrl_i2c3: i2c3grp {
145*6f30b27cSTim Harvey		fsl,pins = <
146*6f30b27cSTim Harvey			MX8MM_IOMUXC_I2C3_SCL_I2C3_SCL		0x400001c3
147*6f30b27cSTim Harvey			MX8MM_IOMUXC_I2C3_SDA_I2C3_SDA		0x400001c3
148*6f30b27cSTim Harvey		>;
149*6f30b27cSTim Harvey	};
150*6f30b27cSTim Harvey
151*6f30b27cSTim Harvey	pinctrl_pps: ppsgrp {
152*6f30b27cSTim Harvey		fsl,pins = <
153*6f30b27cSTim Harvey			MX8MM_IOMUXC_GPIO1_IO15_GPIO1_IO15	0x41
154*6f30b27cSTim Harvey		>;
155*6f30b27cSTim Harvey	};
156*6f30b27cSTim Harvey
157*6f30b27cSTim Harvey	pinctrl_reg_usb1_en: regusb1grp {
158*6f30b27cSTim Harvey		fsl,pins = <
159*6f30b27cSTim Harvey			MX8MM_IOMUXC_GPIO1_IO12_GPIO1_IO12	0x41
160*6f30b27cSTim Harvey			MX8MM_IOMUXC_GPIO1_IO13_USB1_OTG_OC	0x41
161*6f30b27cSTim Harvey		>;
162*6f30b27cSTim Harvey	};
163*6f30b27cSTim Harvey
164*6f30b27cSTim Harvey	pinctrl_spi2: spi2grp {
165*6f30b27cSTim Harvey		fsl,pins = <
166*6f30b27cSTim Harvey			MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK	0xd6
167*6f30b27cSTim Harvey			MX8MM_IOMUXC_ECSPI2_MOSI_ECSPI2_MOSI	0xd6
168*6f30b27cSTim Harvey			MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK	0xd6
169*6f30b27cSTim Harvey			MX8MM_IOMUXC_ECSPI2_SS0_GPIO5_IO13	0xd6
170*6f30b27cSTim Harvey		>;
171*6f30b27cSTim Harvey	};
172*6f30b27cSTim Harvey
173*6f30b27cSTim Harvey	pinctrl_uart1: uart1grp {
174*6f30b27cSTim Harvey		fsl,pins = <
175*6f30b27cSTim Harvey			MX8MM_IOMUXC_UART1_RXD_UART1_DCE_RX	0x140
176*6f30b27cSTim Harvey			MX8MM_IOMUXC_UART1_TXD_UART1_DCE_TX	0x140
177*6f30b27cSTim Harvey		>;
178*6f30b27cSTim Harvey	};
179*6f30b27cSTim Harvey
180*6f30b27cSTim Harvey	pinctrl_uart3: uart3grp {
181*6f30b27cSTim Harvey		fsl,pins = <
182*6f30b27cSTim Harvey			MX8MM_IOMUXC_UART3_RXD_UART3_DCE_RX	0x140
183*6f30b27cSTim Harvey			MX8MM_IOMUXC_UART3_TXD_UART3_DCE_TX	0x140
184*6f30b27cSTim Harvey		>;
185*6f30b27cSTim Harvey	};
186*6f30b27cSTim Harvey};
187