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 = <®_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