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