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