0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003 * Copyright 2021 Andreas Kemnade
0004 * based on works
0005 * Copyright 2016 Freescale Semiconductor, Inc.
0006 * and
0007 * Copyright (C) 2014 Ricoh Electronic Devices Co., Ltd
0008 *
0009 * Netronix E70K02 board common.
0010 * This board is equipped with different SoCs and
0011 * found in ebook-readers like the Kobo Clara HD (with i.MX6SLL) and
0012 * the Tolino Shine 3 (with i.MX6SL)
0013 */
0014 #include <dt-bindings/input/input.h>
0015
0016 / {
0017 aliases {
0018 mmc0 = &usdhc1;
0019 mmc1 = &usdhc3;
0020 };
0021
0022 chosen {
0023 stdout-path = &uart1;
0024 };
0025
0026 gpio_keys: gpio-keys {
0027 compatible = "gpio-keys";
0028
0029 key-power {
0030 label = "Power";
0031 gpios = <&gpio4 25 GPIO_ACTIVE_LOW>;
0032 linux,code = <KEY_POWER>;
0033 wakeup-source;
0034 };
0035
0036 key-cover {
0037 label = "Cover";
0038 gpios = <&gpio4 23 GPIO_ACTIVE_LOW>;
0039 linux,code = <SW_LID>;
0040 linux,input-type = <EV_SW>;
0041 wakeup-source;
0042 };
0043
0044 key-pageup {
0045 label = "PageUp";
0046 gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;
0047 linux,code = <KEY_PAGEUP>;
0048 };
0049
0050 key-pagedown {
0051 label = "PageDown";
0052 gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
0053 linux,code = <KEY_PAGEDOWN>;
0054 };
0055 };
0056
0057 leds: leds {
0058 compatible = "gpio-leds";
0059
0060 led {
0061 label = "e70k02:white:on";
0062 gpios = <&gpio4 17 GPIO_ACTIVE_LOW>;
0063 linux,default-trigger = "timer";
0064 };
0065 };
0066
0067 memory@80000000 {
0068 device_type = "memory";
0069 reg = <0x80000000 0x20000000>;
0070 };
0071
0072 reg_wifi: regulator-wifi {
0073 compatible = "regulator-fixed";
0074 regulator-name = "SD3_SPWR";
0075 regulator-min-microvolt = <3000000>;
0076 regulator-max-microvolt = <3000000>;
0077 gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
0078 enable-active-high;
0079 };
0080
0081 wifi_pwrseq: wifi-pwrseq {
0082 compatible = "mmc-pwrseq-simple";
0083 post-power-on-delay-ms = <20>;
0084 reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
0085 };
0086 };
0087
0088 &i2c1 {
0089 clock-frequency = <100000>;
0090 status = "okay";
0091
0092 lm3630a: backlight@36 {
0093 reg = <0x36>;
0094 compatible = "ti,lm3630a";
0095 enable-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
0096
0097 #address-cells = <1>;
0098 #size-cells = <0>;
0099
0100 led@0 {
0101 reg = <0>;
0102 led-sources = <0>;
0103 label = "backlight_warm";
0104 default-brightness = <0>;
0105 max-brightness = <255>;
0106 };
0107
0108 led@1 {
0109 reg = <1>;
0110 led-sources = <1>;
0111 label = "backlight_cold";
0112 default-brightness = <0>;
0113 max-brightness = <255>;
0114 };
0115 };
0116
0117 /* TODO: KX122 acceleration sensor a 0x1e */
0118
0119 };
0120
0121 &i2c2 {
0122 clock-frequency = <100000>;
0123 status = "okay";
0124
0125 /* TODO: CYTTSP5 touch controller at 0x24 */
0126
0127 /* TODO: SY7636 PMIC for E Ink at 0x62 */
0128
0129 };
0130
0131 &i2c3 {
0132 clock-frequency = <100000>;
0133 status = "okay";
0134
0135 ricoh619: pmic@32 {
0136 compatible = "ricoh,rc5t619";
0137 reg = <0x32>;
0138 interrupt-parent = <&gpio4>;
0139 interrupts = <19 IRQ_TYPE_EDGE_FALLING>;
0140 system-power-controller;
0141
0142 regulators {
0143 dcdc1_reg: DCDC1 {
0144 regulator-name = "DCDC1";
0145 regulator-min-microvolt = <300000>;
0146 regulator-max-microvolt = <1875000>;
0147 regulator-always-on;
0148 regulator-boot-on;
0149
0150 regulator-state-mem {
0151 regulator-on-in-suspend;
0152 regulator-suspend-max-microvolt = <900000>;
0153 regulator-suspend-min-microvolt = <900000>;
0154 };
0155 };
0156
0157 /* Core3_3V3 */
0158 dcdc2_reg: DCDC2 {
0159 regulator-name = "DCDC2";
0160 regulator-always-on;
0161 regulator-boot-on;
0162
0163 regulator-state-mem {
0164 regulator-on-in-suspend;
0165 regulator-suspend-max-microvolt = <3300000>;
0166 regulator-suspend-min-microvolt = <3300000>;
0167 };
0168 };
0169
0170 dcdc3_reg: DCDC3 {
0171 regulator-name = "DCDC3";
0172 regulator-min-microvolt = <300000>;
0173 regulator-max-microvolt = <1875000>;
0174 regulator-always-on;
0175 regulator-boot-on;
0176
0177 regulator-state-mem {
0178 regulator-on-in-suspend;
0179 regulator-suspend-max-microvolt = <1140000>;
0180 regulator-suspend-min-microvolt = <1140000>;
0181 };
0182 };
0183
0184 /* Core4_1V2 */
0185 dcdc4_reg: DCDC4 {
0186 regulator-name = "DCDC4";
0187 regulator-min-microvolt = <1200000>;
0188 regulator-max-microvolt = <1200000>;
0189 regulator-always-on;
0190 regulator-boot-on;
0191
0192 regulator-state-mem {
0193 regulator-on-in-suspend;
0194 regulator-suspend-max-microvolt = <1140000>;
0195 regulator-suspend-min-microvolt = <1140000>;
0196 };
0197 };
0198
0199 /* Core4_1V8 */
0200 dcdc5_reg: DCDC5 {
0201 regulator-name = "DCDC5";
0202 regulator-min-microvolt = <1800000>;
0203 regulator-max-microvolt = <1800000>;
0204 regulator-always-on;
0205 regulator-boot-on;
0206
0207 regulator-state-mem {
0208 regulator-on-in-suspend;
0209 regulator-suspend-max-microvolt = <1700000>;
0210 regulator-suspend-min-microvolt = <1700000>;
0211 };
0212 };
0213
0214 ldo1_reg: LDO1 {
0215 regulator-name = "LDO1";
0216 regulator-boot-on;
0217 };
0218
0219 /* Core1_3V3 */
0220 ldo2_reg: LDO2 {
0221 regulator-name = "LDO2";
0222 regulator-always-on;
0223 regulator-boot-on;
0224
0225 regulator-state-mem {
0226 regulator-on-in-suspend;
0227 regulator-suspend-max-microvolt = <3000000>;
0228 regulator-suspend-min-microvolt = <3000000>;
0229 };
0230 };
0231
0232 /* Core5_1V2 */
0233 ldo3_reg: LDO3 {
0234 regulator-name = "LDO3";
0235 regulator-always-on;
0236 regulator-boot-on;
0237 };
0238
0239 ldo4_reg: LDO4 {
0240 regulator-name = "LDO4";
0241 regulator-boot-on;
0242 };
0243
0244 /* SPD_3V3 */
0245 ldo5_reg: LDO5 {
0246 regulator-name = "LDO5";
0247 regulator-always-on;
0248 regulator-boot-on;
0249 };
0250
0251 /* DDR_0V6 */
0252 ldo6_reg: LDO6 {
0253 regulator-name = "LDO6";
0254 regulator-always-on;
0255 regulator-boot-on;
0256 };
0257
0258 /* VDD_PWM */
0259 ldo7_reg: LDO7 {
0260 regulator-name = "LDO7";
0261 regulator-boot-on;
0262 };
0263
0264 /* ldo_1v8 */
0265 ldo8_reg: LDO8 {
0266 regulator-name = "LDO8";
0267 regulator-min-microvolt = <1800000>;
0268 regulator-max-microvolt = <1800000>;
0269 regulator-boot-on;
0270 };
0271
0272 ldo9_reg: LDO9 {
0273 regulator-name = "LDO9";
0274 regulator-boot-on;
0275 };
0276
0277 ldo10_reg: LDO10 {
0278 regulator-name = "LDO10";
0279 regulator-boot-on;
0280 };
0281
0282 ldortc1_reg: LDORTC1 {
0283 regulator-name = "LDORTC1";
0284 regulator-boot-on;
0285 };
0286 };
0287 };
0288 };
0289
0290 &snvs_rtc {
0291 /* we are using the rtc in the pmic, not disabled in imx6sll.dtsi */
0292 status = "disabled";
0293 };
0294
0295 &uart1 {
0296 status = "okay";
0297 };
0298
0299 &usdhc1 {
0300 non-removable;
0301 no-1-8-v;
0302 status = "okay";
0303 };
0304
0305 &usdhc3 {
0306 vmmc-supply = <®_wifi>;
0307 mmc-pwrseq = <&wifi_pwrseq>;
0308 cap-power-off-card;
0309 non-removable;
0310 status = "okay";
0311 };
0312
0313 &usbotg1 {
0314 pinctrl-names = "default";
0315 disable-over-current;
0316 srp-disable;
0317 hnp-disable;
0318 adp-disable;
0319 status = "okay";
0320 };