1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Copyright (C) 2015 Freescale Semiconductor, Inc.
4 * Copyright (C) 2019 reMarkable AS - http://www.remarkable.com/
11 #include <dt-bindings/input/linux-event-codes.h>
14 model = "reMarkable 2.0";
15 compatible = "remarkable,imx7d-remarkable2", "fsl,imx7d";
22 device_type = "memory";
23 reg = <0x80000000 0x40000000>;
28 thermal-sensors = <&sy7636a>;
29 polling-delay-passive = <30000>;
30 polling-delay = <30000>;
34 temperature = <49000>;
40 temperature = <50000>;
48 reg_brcm: regulator-brcm {
49 compatible = "regulator-fixed";
50 regulator-name = "brcm_reg";
51 regulator-min-microvolt = <3300000>;
52 regulator-max-microvolt = <3300000>;
53 pinctrl-names = "default";
54 pinctrl-0 = <&pinctrl_brcm_reg>;
55 gpio = <&gpio6 13 GPIO_ACTIVE_HIGH>;
57 startup-delay-us = <150>;
60 reg_digitizer: regulator-digitizer {
61 compatible = "regulator-fixed";
62 regulator-name = "VDD_3V3_DIGITIZER";
63 regulator-min-microvolt = <3300000>;
64 regulator-max-microvolt = <3300000>;
65 pinctrl-names = "default", "sleep";
66 pinctrl-0 = <&pinctrl_digitizer_reg>;
67 pinctrl-1 = <&pinctrl_digitizer_reg>;
68 gpio = <&gpio1 6 GPIO_ACTIVE_HIGH>;
70 startup-delay-us = <100000>; /* 100 ms */
73 reg_touch: regulator-touch {
74 compatible = "regulator-fixed";
75 regulator-name = "VDD_3V3_TOUCH";
76 regulator-min-microvolt = <3300000>;
77 regulator-max-microvolt = <3300000>;
78 pinctrl-names = "default";
79 pinctrl-0 = <&pinctrl_touch_reg>;
80 gpio = <&gpio1 11 GPIO_ACTIVE_HIGH>;
84 wifi_pwrseq: wifi_pwrseq {
85 compatible = "mmc-pwrseq-simple";
86 pinctrl-names = "default";
87 pinctrl-0 = <&pinctrl_wifi>;
88 reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
89 clocks = <&clks IMX7D_CLKO2_ROOT_DIV>;
90 clock-names = "ext_clock";
95 cpu-supply = <&buck1>;
99 assigned-clocks = <&clks IMX7D_CLKO2_ROOT_SRC>,
100 <&clks IMX7D_CLKO2_ROOT_DIV>;
101 assigned-clock-parents = <&clks IMX7D_CKIL>;
102 assigned-clock-rates = <0>, <32768>;
106 clock-frequency = <400000>;
107 pinctrl-names = "default";
108 pinctrl-0 = <&pinctrl_i2c1>;
111 wacom_digitizer: digitizer@9 {
112 compatible = "hid-over-i2c";
114 hid-descr-addr = <0x01>;
115 pinctrl-names = "default";
116 pinctrl-0 = <&pinctrl_wacom>;
117 interrupt-parent = <&gpio1>;
118 interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
119 touchscreen-inverted-x;
120 touchscreen-inverted-y;
121 vdd-supply = <®_digitizer>;
126 clock-frequency = <100000>;
127 pinctrl-names = "default";
128 pinctrl-0 = <&pinctrl_i2c2>;
132 compatible = "rohm,bd71815";
134 pinctrl-names = "default";
135 pinctrl-0 = <&pinctrl_bd71815>;
136 interrupt-parent = <&gpio6>; /* PMIC_INT_B GPIO6_IO16 */
137 interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
139 clocks = <&clks IMX7D_CLKO2_ROOT_SRC>;
140 clock-output-names = "bd71815-32k-out";
146 regulator-name = "buck1";
147 regulator-min-microvolt = <800000>;
148 regulator-max-microvolt = <2000000>;
151 regulator-ramp-delay = <1250>;
155 regulator-name = "buck2";
156 regulator-min-microvolt = <800000>;
157 regulator-max-microvolt = <2000000>;
160 regulator-ramp-delay = <1250>;
164 regulator-name = "buck3";
165 regulator-min-microvolt = <1200000>;
166 regulator-max-microvolt = <2700000>;
172 regulator-name = "buck4";
173 regulator-min-microvolt = <1100000>;
174 regulator-max-microvolt = <1850000>;
180 regulator-name = "buck5";
181 regulator-min-microvolt = <1800000>;
182 regulator-max-microvolt = <3300000>;
188 regulator-name = "ldo1";
189 regulator-min-microvolt = <800000>;
190 regulator-max-microvolt = <3300000>;
196 regulator-name = "ldo2";
197 regulator-min-microvolt = <800000>;
198 regulator-max-microvolt = <3300000>;
204 regulator-name = "ldo3";
205 regulator-min-microvolt = <800000>;
206 regulator-max-microvolt = <3300000>;
212 regulator-name = "ldo4";
213 regulator-min-microvolt = <800000>;
214 regulator-max-microvolt = <3300000>;
220 regulator-name = "ldo5";
221 regulator-min-microvolt = <800000>;
222 regulator-max-microvolt = <3300000>;
228 regulator-name = "ldodvref";
234 regulator-name = "ldolpsr";
240 regulator-name = "wled";
241 regulator-min-microamp = <10>;
242 regulator-max-microamp = <25000>;
251 clock-frequency = <100000>;
252 pinctrl-names = "default";
253 pinctrl-0 = <&pinctrl_i2c3>;
257 compatible = "cypress,tt21000";
259 pinctrl-names = "default";
260 pinctrl-0 = <&pinctrl_touch>;
261 interrupt-parent = <&gpio1>;
262 interrupts = <14 IRQ_TYPE_EDGE_FALLING>;
263 reset-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
264 vdd-supply = <®_touch>;
265 touchscreen-size-x = <880>;
266 touchscreen-size-y = <1280>;
267 #address-cells = <1>;
272 linux,keycodes = <KEY_HOMEPAGE>;
277 linux,keycodes = <KEY_MENU>;
282 linux,keycodes = <KEY_BACK>;
287 linux,keycodes = <KEY_SEARCH>;
292 linux,keycodes = <KEY_VOLUMEDOWN>;
297 linux,keycodes = <KEY_VOLUMEUP>;
302 linux,keycodes = <KEY_CAMERA>;
307 linux,keycodes = <KEY_POWER>;
313 clock-frequency = <100000>;
314 pinctrl-names = "default", "sleep";
315 pinctrl-0 = <&pinctrl_i2c4>;
316 pinctrl-1 = <&pinctrl_i2c4>;
320 compatible = "silergy,sy7636a";
322 pinctrl-names = "default";
323 pinctrl-0 = <&pinctrl_epdpmic>;
324 #thermal-sensor-cells = <0>;
325 epd-pwr-good-gpios = <&gpio6 21 GPIO_ACTIVE_HIGH>;
329 regulator-name = "vcom";
341 pinctrl-names = "default";
342 pinctrl-0 = <&pinctrl_uart1>;
343 assigned-clocks = <&clks IMX7D_UART1_ROOT_SRC>;
344 assigned-clock-parents = <&clks IMX7D_OSC_24M_CLK>;
349 pinctrl-names = "default";
350 pinctrl-0 = <&pinctrl_uart6>;
351 assigned-clocks = <&clks IMX7D_UART6_ROOT_SRC>;
352 assigned-clock-parents = <&clks IMX7D_OSC_24M_CLK>;
363 #address-cells = <1>;
365 pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
366 pinctrl-0 = <&pinctrl_usdhc2>;
367 pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
368 pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
369 mmc-pwrseq = <&wifi_pwrseq>;
370 vmmc-supply = <®_brcm>;
373 keep-power-in-suspend;
379 compatible = "brcm,bcm4329-fmac";
384 pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
385 pinctrl-0 = <&pinctrl_usdhc3>;
386 pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
387 pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
388 pinctrl-3 = <&pinctrl_usdhc3>;
389 assigned-clocks = <&clks IMX7D_USDHC3_ROOT_CLK>;
390 assigned-clock-rates = <400000000>;
397 pinctrl-names = "default";
398 pinctrl-0 = <&pinctrl_wdog>;
399 fsl,ext-reset-output;
403 pinctrl_digitizer_reg: digitizerreggrp {
405 /* DIGITIZER_PWR_EN */
406 MX7D_PAD_LPSR_GPIO1_IO06__GPIO1_IO6 0x14
410 pinctrl_wacom: wacomgrp {
412 /*MX7D_PAD_LPSR_GPIO1_IO05__GPIO1_IO5 0x00000014 FWE */
413 MX7D_PAD_LPSR_GPIO1_IO04__GPIO1_IO4 0x00000074 /* PDCTB */
414 MX7D_PAD_LPSR_GPIO1_IO01__GPIO1_IO1 0x00000034 /* WACOM INT */
415 /*MX7D_PAD_LPSR_GPIO1_IO06__GPIO1_IO6 0x00000014 WACOM PWR ENABLE */
416 /*MX7D_PAD_LPSR_GPIO1_IO00__GPIO1_IO0 0x00000074 WACOM RESET */
422 pinctrl_bd71815: bd71815grp {
424 MX7D_PAD_SAI1_RX_SYNC__GPIO6_IO16 0x59
428 pinctrl_brcm_reg: brcmreggrp {
431 MX7D_PAD_SAI1_TX_BCLK__GPIO6_IO13 0x14
435 pinctrl_epdpmic: epdpmicgrp {
437 MX7D_PAD_SAI2_RX_DATA__GPIO6_IO21 0x00000074
438 MX7D_PAD_ENET1_RGMII_TXC__GPIO7_IO11 0x00000014
442 pinctrl_touch: touchgrp {
444 /* CYTTSP interrupt */
445 MX7D_PAD_GPIO1_IO14__GPIO1_IO14 0x54
447 MX7D_PAD_GPIO1_IO13__GPIO1_IO13 0x04
451 pinctrl_i2c1: i2c1grp {
453 MX7D_PAD_I2C1_SDA__I2C1_SDA 0x4000007f
454 MX7D_PAD_I2C1_SCL__I2C1_SCL 0x4000007f
458 pinctrl_i2c2: i2c2grp {
460 MX7D_PAD_I2C2_SDA__I2C2_SDA 0x4000007f
461 MX7D_PAD_I2C2_SCL__I2C2_SCL 0x4000007f
465 pinctrl_i2c3: i2c3grp {
467 MX7D_PAD_I2C3_SDA__I2C3_SDA 0x4000007f
468 MX7D_PAD_I2C3_SCL__I2C3_SCL 0x4000007f
472 pinctrl_i2c4: i2c4grp {
474 MX7D_PAD_I2C4_SDA__I2C4_SDA 0x4000007f
475 MX7D_PAD_I2C4_SCL__I2C4_SCL 0x4000007f
479 pinctrl_touch_reg: touchreggrp {
482 MX7D_PAD_GPIO1_IO11__GPIO1_IO11 0x14
486 pinctrl_uart1: uart1grp {
488 MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX 0x79
489 MX7D_PAD_UART1_RX_DATA__UART1_DCE_RX 0x79
493 pinctrl_uart6: uart6grp {
495 MX7D_PAD_EPDC_DATA09__UART6_DCE_TX 0x79
496 MX7D_PAD_EPDC_DATA08__UART6_DCE_RX 0x79
500 pinctrl_usdhc2: usdhc2grp {
502 MX7D_PAD_SD2_CMD__SD2_CMD 0x59
503 MX7D_PAD_SD2_CLK__SD2_CLK 0x19
504 MX7D_PAD_SD2_DATA0__SD2_DATA0 0x59
505 MX7D_PAD_SD2_DATA1__SD2_DATA1 0x59
506 MX7D_PAD_SD2_DATA2__SD2_DATA2 0x59
507 MX7D_PAD_SD2_DATA3__SD2_DATA3 0x59
511 pinctrl_usdhc2_100mhz: usdhc2grp_100mhz {
513 MX7D_PAD_SD2_CMD__SD2_CMD 0x5a
514 MX7D_PAD_SD2_CLK__SD2_CLK 0x1a
515 MX7D_PAD_SD2_DATA0__SD2_DATA0 0x5a
516 MX7D_PAD_SD2_DATA1__SD2_DATA1 0x5a
517 MX7D_PAD_SD2_DATA2__SD2_DATA2 0x5a
518 MX7D_PAD_SD2_DATA3__SD2_DATA3 0x5a
522 pinctrl_usdhc2_200mhz: usdhc2grp_200mhz {
524 MX7D_PAD_SD2_CMD__SD2_CMD 0x5b
525 MX7D_PAD_SD2_CLK__SD2_CLK 0x1b
526 MX7D_PAD_SD2_DATA0__SD2_DATA0 0x5b
527 MX7D_PAD_SD2_DATA1__SD2_DATA1 0x5b
528 MX7D_PAD_SD2_DATA2__SD2_DATA2 0x5b
529 MX7D_PAD_SD2_DATA3__SD2_DATA3 0x5b
533 pinctrl_usdhc3: usdhc3grp {
535 MX7D_PAD_SD3_CMD__SD3_CMD 0x59
536 MX7D_PAD_SD3_CLK__SD3_CLK 0x19
537 MX7D_PAD_SD3_DATA0__SD3_DATA0 0x59
538 MX7D_PAD_SD3_DATA1__SD3_DATA1 0x59
539 MX7D_PAD_SD3_DATA2__SD3_DATA2 0x59
540 MX7D_PAD_SD3_DATA3__SD3_DATA3 0x59
541 MX7D_PAD_SD3_DATA4__SD3_DATA4 0x59
542 MX7D_PAD_SD3_DATA5__SD3_DATA5 0x59
543 MX7D_PAD_SD3_DATA6__SD3_DATA6 0x59
544 MX7D_PAD_SD3_DATA7__SD3_DATA7 0x59
545 MX7D_PAD_SD3_STROBE__SD3_STROBE 0x19
549 pinctrl_usdhc3_100mhz: usdhc3grp_100mhz {
551 MX7D_PAD_SD3_CMD__SD3_CMD 0x5a
552 MX7D_PAD_SD3_CLK__SD3_CLK 0x1a
553 MX7D_PAD_SD3_DATA0__SD3_DATA0 0x5a
554 MX7D_PAD_SD3_DATA1__SD3_DATA1 0x5a
555 MX7D_PAD_SD3_DATA2__SD3_DATA2 0x5a
556 MX7D_PAD_SD3_DATA3__SD3_DATA3 0x5a
557 MX7D_PAD_SD3_DATA4__SD3_DATA4 0x5a
558 MX7D_PAD_SD3_DATA5__SD3_DATA5 0x5a
559 MX7D_PAD_SD3_DATA6__SD3_DATA6 0x5a
560 MX7D_PAD_SD3_DATA7__SD3_DATA7 0x5a
561 MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1a
565 pinctrl_usdhc3_200mhz: usdhc3grp_200mhz {
567 MX7D_PAD_SD3_CMD__SD3_CMD 0x5b
568 MX7D_PAD_SD3_CLK__SD3_CLK 0x1b
569 MX7D_PAD_SD3_DATA0__SD3_DATA0 0x5b
570 MX7D_PAD_SD3_DATA1__SD3_DATA1 0x5b
571 MX7D_PAD_SD3_DATA2__SD3_DATA2 0x5b
572 MX7D_PAD_SD3_DATA3__SD3_DATA3 0x5b
573 MX7D_PAD_SD3_DATA4__SD3_DATA4 0x5b
574 MX7D_PAD_SD3_DATA5__SD3_DATA5 0x5b
575 MX7D_PAD_SD3_DATA6__SD3_DATA6 0x5b
576 MX7D_PAD_SD3_DATA7__SD3_DATA7 0x5b
577 MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1b
581 pinctrl_wdog: wdoggrp {
583 MX7D_PAD_ENET1_COL__WDOG1_WDOG_ANY 0x74
587 pinctrl_wifi: wifigrp {
590 MX7D_PAD_SD2_CD_B__GPIO5_IO9 0x00000014
592 MX7D_PAD_SD1_WP__CCM_CLKO2 0x00000014