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