blob: dd03e3860f97f901524570a89552adee135accce [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright 2019 Andreas Kemnade
4 * based on works
5 * Copyright 2016 Freescale Semiconductor, Inc.
6 * and
7 * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
8 *
9 * Netronix E60K02 board common.
10 * This board is equipped with different SoCs and
11 * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
12 * the Tolino Shine 3 (with i.MX6SL)
13 */
14#include <dt-bindings/input/input.h>
15
16/ {
17
18 chosen {
19 stdout-path = &uart1;
20 };
21
22 gpio_keys: gpio-keys {
23 compatible = "gpio-keys";
24
25 key-power {
26 label = "Power";
27 gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
28 linux,code = <KEY_POWER>;
29 wakeup-source;
30 };
31
32 key-cover {
33 label = "Cover";
34 gpios = <&gpio5 12 GPIO_ACTIVE_LOW>;
35 linux,code = <SW_LID>;
36 linux,input-type = <EV_SW>;
37 wakeup-source;
38 };
39 };
40
41 leds: leds {
42 compatible = "gpio-leds";
43
44 led {
45 label = "e60k02:white:on";
46 gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
47 linux,default-trigger = "timer";
48 };
49 };
50
51 memory@80000000 {
52 device_type = "memory";
53 reg = <0x80000000 0x20000000>;
54 };
55
56 reg_wifi: regulator-wifi {
57 compatible = "regulator-fixed";
58 regulator-name = "SD3_SPWR";
59 regulator-min-microvolt = <3000000>;
60 regulator-max-microvolt = <3000000>;
61 gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
62 enable-active-high;
63 };
64
65 wifi_pwrseq: wifi_pwrseq {
66 compatible = "mmc-pwrseq-simple";
67 post-power-on-delay-ms = <20>;
68 reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
69 };
70};
71
72
73&i2c1 {
74 clock-frequency = <100000>;
75 status = "okay";
76
77 lm3630a: backlight@36 {
78 reg = <0x36>;
79 compatible = "ti,lm3630a";
80 enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
81
82 #address-cells = <1>;
83 #size-cells = <0>;
84
85 led@0 {
86 reg = <0>;
87 led-sources = <0>;
88 label = "backlight_warm";
89 default-brightness = <0>;
90 max-brightness = <255>;
91 };
92
93 led@1 {
94 reg = <1>;
95 led-sources = <1>;
96 label = "backlight_cold";
97 default-brightness = <0>;
98 max-brightness = <255>;
99 };
100 };
101};
102
103&i2c2 {
104 clock-frequency = <100000>;
105 status = "okay";
106
107 touchscreen@24 {
108 compatible = "cypress,tt21000";
109 reg = <0x24>;
110 pinctrl-names = "default";
111 pinctrl-0 = <&pinctrl_cyttsp5_gpio>;
112 interrupt-parent = <&gpio5>;
113 interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
114 reset-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>;
115 vdd-supply = <&ldo5_reg>;
116 };
117
118 /* TODO: TPS65185 PMIC for E Ink at 0x68 */
119
120};
121
122&i2c3 {
123 clock-frequency = <100000>;
124 status = "okay";
125
126 ricoh619: pmic@32 {
127 compatible = "ricoh,rc5t619";
128 reg = <0x32>;
129 interrupt-parent = <&gpio5>;
130 interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
131 system-power-controller;
132
133 regulators {
134 dcdc1_reg: DCDC1 {
135 regulator-name = "DCDC1";
136 regulator-min-microvolt = <300000>;
137 regulator-max-microvolt = <1875000>;
138 regulator-always-on;
139 regulator-boot-on;
140
141 regulator-state-mem {
142 regulator-on-in-suspend;
143 regulator-suspend-max-microvolt = <900000>;
144 regulator-suspend-min-microvolt = <900000>;
145 };
146 };
147
148 /* Core3_3V3 */
149 dcdc2_reg: DCDC2 {
150 regulator-name = "DCDC2";
151 regulator-always-on;
152 regulator-boot-on;
153
154 regulator-state-mem {
155 regulator-on-in-suspend;
156 regulator-suspend-max-microvolt = <3300000>;
157 regulator-suspend-min-microvolt = <3300000>;
158 };
159 };
160
161 dcdc3_reg: DCDC3 {
162 regulator-name = "DCDC3";
163 regulator-min-microvolt = <300000>;
164 regulator-max-microvolt = <1875000>;
165 regulator-always-on;
166 regulator-boot-on;
167
168 regulator-state-mem {
169 regulator-on-in-suspend;
170 regulator-suspend-max-microvolt = <1140000>;
171 regulator-suspend-min-microvolt = <1140000>;
172 };
173 };
174
175 /* Core4_1V2 */
176 dcdc4_reg: DCDC4 {
177 regulator-name = "DCDC4";
178 regulator-min-microvolt = <1200000>;
179 regulator-max-microvolt = <1200000>;
180 regulator-always-on;
181 regulator-boot-on;
182
183 regulator-state-mem {
184 regulator-on-in-suspend;
185 regulator-suspend-max-microvolt = <1140000>;
186 regulator-suspend-min-microvolt = <1140000>;
187 };
188 };
189
190 /* Core4_1V8 */
191 dcdc5_reg: DCDC5 {
192 regulator-name = "DCDC5";
193 regulator-min-microvolt = <1800000>;
194 regulator-max-microvolt = <1800000>;
195 regulator-always-on;
196 regulator-boot-on;
197
198 regulator-state-mem {
199 regulator-on-in-suspend;
200 regulator-suspend-max-microvolt = <1700000>;
201 regulator-suspend-min-microvolt = <1700000>;
202 };
203 };
204
205 /* IR_3V3 */
206 ldo1_reg: LDO1 {
207 regulator-name = "LDO1";
208 regulator-boot-on;
209 };
210
211 /* Core1_3V3 */
212 ldo2_reg: LDO2 {
213 regulator-name = "LDO2";
214 regulator-always-on;
215 regulator-boot-on;
216
217 regulator-state-mem {
218 regulator-on-in-suspend;
219 regulator-suspend-max-microvolt = <3000000>;
220 regulator-suspend-min-microvolt = <3000000>;
221 };
222 };
223
224 /* Core5_1V2 */
225 ldo3_reg: LDO3 {
226 regulator-name = "LDO3";
227 regulator-always-on;
228 regulator-boot-on;
229 };
230
231 ldo4_reg: LDO4 {
232 regulator-name = "LDO4";
233 regulator-boot-on;
234 };
235
236 /* SPD_3V3 */
237 ldo5_reg: LDO5 {
238 regulator-name = "LDO5";
239 regulator-always-on;
240 regulator-boot-on;
241 };
242
243 /* DDR_0V6 */
244 ldo6_reg: LDO6 {
245 regulator-name = "LDO6";
246 regulator-always-on;
247 regulator-boot-on;
248 };
249
250 /* VDD_PWM */
251 ldo7_reg: LDO7 {
252 regulator-name = "LDO7";
253 regulator-always-on;
254 regulator-boot-on;
255 };
256
257 /* ldo_1v8 */
258 ldo8_reg: LDO8 {
259 regulator-name = "LDO8";
260 regulator-min-microvolt = <1800000>;
261 regulator-max-microvolt = <1800000>;
262 regulator-always-on;
263 regulator-boot-on;
264 };
265
266 ldo9_reg: LDO9 {
267 regulator-name = "LDO9";
268 regulator-boot-on;
269 };
270
271 ldo10_reg: LDO10 {
272 regulator-name = "LDO10";
273 regulator-boot-on;
274 };
275
276 ldortc1_reg: LDORTC1 {
277 regulator-name = "LDORTC1";
278 regulator-boot-on;
279 };
280 };
281 };
282};
283
284&snvs_rtc {
285 /* we are using the rtc in the pmic, not disabled in imx6sll.dtsi */
286 status = "disabled";
287};
288
289&uart1 {
290 /* J4, through-hole */
291 status = "okay";
292};
293
294&uart4 {
295 /* TP198, next to J4, SMD pads */
296 status = "okay";
297};
298
299&usdhc2 {
300 non-removable;
301 status = "okay";
302};
303
304&usdhc3 {
305 vmmc-supply = <&reg_wifi>;
306 mmc-pwrseq = <&wifi_pwrseq>;
307 cap-power-off-card;
308 non-removable;
309 status = "okay";
310};
311
312&usbotg1 {
313 pinctrl-names = "default";
314 pinctrl-0 = <&pinctrl_usbotg1>;
315 disable-over-current;
316 srp-disable;
317 hnp-disable;
318 adp-disable;
319 status = "okay";
320};