summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/freescale/imx8mn-dimonoff-gateway-evk.dts
blob: 6f9b82958b96a509b4c9e8ba389102efc374eb02 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright 2022 DimOnOff
 */

/dts-v1/;

#include <dt-bindings/usb/pd.h>
#include "imx8mn-var-som-symphony.dts"

/ {
	model = "DimOnOff Gateway EVK board";
	compatible = "dimonoff,gateway-evk", "variscite,var-som-mx8mn",
		     "fsl,imx8mn";

	/*
	 * U30 FPF2193 regulator.
	 * Source = BASE_PER_3V3 = SOM_3V3 (COM pin 49).
	 */
	reg_disp_3v3: regulator-disp-3v3 {
		compatible = "regulator-fixed";
		regulator-name = "Display 3V3";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-always-on;
		regulator-boot-on;
	};

	gpio-keys {
		compatible = "gpio-keys";
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_gpio_keys>;

		key-enter {
			label = "enter";
			gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
			linux,code = <KEY_ENTER>;
			wakeup-source;
		};
	};

	/* Bourns PEC12R rotary encoder, 24 steps. */
	rotary: rotary-encoder {
		compatible = "rotary-encoder";
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_rotary>;
		gpios = <&gpio5 12 GPIO_ACTIVE_LOW>, /* A */
			<&gpio5 13 GPIO_ACTIVE_LOW>; /* B */
		linux,axis = <0>; /* REL_X */
		rotary-encoder,encoding = "gray";
		rotary-encoder,relative-axis;
	};
};

/* Disable Asynchronous Sample Rate Converter (audio) */
&easrc {
	status = "disabled";
};

&ecspi1 {
	/* Resistive touch controller */
	/delete-node/ touchscreen@0;
};

&gpu {
	status = "disabled";
};

&i2c2 {
	adc@48 {
		compatible = "ti,ads7924";
		reg = <0x48>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_adc>;
		vref-supply = <&reg_disp_3v3>;
		reset-gpios = <&gpio5 5 GPIO_ACTIVE_LOW>;
		#address-cells = <1>;
		#size-cells = <0>;

		channel@0 {
			reg = <0>;
			label = "Pot0";
		};
		channel@1 {
			reg = <1>;
			label = "Pot1";
		};
		channel@2 {
			reg = <2>;
			label = "Pot2";
		};
		channel@3 {
			reg = <3>;
			label = "Pot3";
		};
	};

	rtc@51 {
		compatible = "nxp,pcf2129";
		reg = <0x51>;
		reset-source; /* For watchdog. */
	};

	rtc@53 {
		compatible = "nxp,pcf2131";
		reg = <0x53>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_rtc>;
		reset-source; /* For watchdog. */
		interrupt-parent = <&gpio5>;
		interrupts = <10 IRQ_TYPE_EDGE_FALLING>; /* J17.6 on EVK */
	};
};

&i2c3 {
	touchscreen@38 {
		status = "disabled";
	};

	codec@1a {
		status = "disabled";
	};

	/* DS1337 RTC module */
	rtc@68 {
		status = "disabled";
	};
};

&sai5 {
	status = "disabled";
};

&iomuxc {
	pinctrl_gpio_keys: gpiokeysgrp {
		fsl,pins = <
			MX8MN_IOMUXC_GPIO1_IO08_GPIO1_IO8	0xc6
		>;
	};

	pinctrl_rotary: rotarygrp {
		fsl,pins = <
			MX8MN_IOMUXC_ECSPI2_MISO_GPIO5_IO12	0x00000156
			MX8MN_IOMUXC_ECSPI2_SS0_GPIO5_IO13	0x00000156
		>;
	};

	pinctrl_adc: adcgrp {
		fsl,pins = <
			MX8MN_IOMUXC_SPDIF_EXT_CLK_GPIO5_IO5	0x00000156
		>;
	};

	pinctrl_rtc: rtcgrp {
		fsl,pins = <
			MX8MN_IOMUXC_ECSPI2_SCLK_GPIO5_IO10	0x00000156
			MX8MN_IOMUXC_ECSPI2_MOSI_GPIO5_IO11	0x00000156
		>;
	};
};