1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 OR MIT 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Copyright 2019 Ondrej Jirman <megous@megous.com> 4*724ba675SRob Herring */ 5*724ba675SRob Herring 6*724ba675SRob Herring/dts-v1/; 7*724ba675SRob Herring#include "sun5i-a13.dtsi" 8*724ba675SRob Herring#include "sunxi-common-regulators.dtsi" 9*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 10*724ba675SRob Herring#include <dt-bindings/input/input.h> 11*724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h> 12*724ba675SRob Herring#include <dt-bindings/pwm/pwm.h> 13*724ba675SRob Herring 14*724ba675SRob Herring/ { 15*724ba675SRob Herring model = "PocketBook Touch Lux 3"; 16*724ba675SRob Herring compatible = "pocketbook,touch-lux-3", "allwinner,sun5i-a13"; 17*724ba675SRob Herring 18*724ba675SRob Herring aliases { 19*724ba675SRob Herring serial0 = &uart1; 20*724ba675SRob Herring i2c0 = &i2c0; 21*724ba675SRob Herring i2c1 = &i2c1; 22*724ba675SRob Herring i2c2 = &i2c2; 23*724ba675SRob Herring }; 24*724ba675SRob Herring 25*724ba675SRob Herring backlight { 26*724ba675SRob Herring compatible = "pwm-backlight"; 27*724ba675SRob Herring pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>; 28*724ba675SRob Herring enable-gpios = <&pio 1 4 GPIO_ACTIVE_HIGH>; /* PB4 */ 29*724ba675SRob Herring brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>; 30*724ba675SRob Herring default-brightness-level = <8>; 31*724ba675SRob Herring power-supply = <®_vcc3v3>; 32*724ba675SRob Herring }; 33*724ba675SRob Herring 34*724ba675SRob Herring chosen { 35*724ba675SRob Herring stdout-path = "serial0:115200n8"; 36*724ba675SRob Herring }; 37*724ba675SRob Herring 38*724ba675SRob Herring leds { 39*724ba675SRob Herring compatible = "gpio-leds"; 40*724ba675SRob Herring 41*724ba675SRob Herring led { 42*724ba675SRob Herring gpios = <&pio 4 8 GPIO_ACTIVE_LOW>; /* PE8 */ 43*724ba675SRob Herring default-state = "on"; 44*724ba675SRob Herring }; 45*724ba675SRob Herring }; 46*724ba675SRob Herring 47*724ba675SRob Herring gpio-keys { 48*724ba675SRob Herring compatible = "gpio-keys"; 49*724ba675SRob Herring autorepeat; 50*724ba675SRob Herring label = "GPIO Keys"; 51*724ba675SRob Herring 52*724ba675SRob Herring key-right { 53*724ba675SRob Herring label = "Right"; 54*724ba675SRob Herring linux,code = <KEY_RIGHT>; 55*724ba675SRob Herring gpios = <&pio 6 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PG9 */ 56*724ba675SRob Herring }; 57*724ba675SRob Herring 58*724ba675SRob Herring key-left { 59*724ba675SRob Herring label = "Left"; 60*724ba675SRob Herring linux,code = <KEY_LEFT>; 61*724ba675SRob Herring gpios = <&pio 6 10 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PG10 */ 62*724ba675SRob Herring }; 63*724ba675SRob Herring }; 64*724ba675SRob Herring 65*724ba675SRob Herring reg_1v8: regulator-1v8 { 66*724ba675SRob Herring compatible = "regulator-fixed"; 67*724ba675SRob Herring regulator-name = "vdd-1v8-nor-ctp"; 68*724ba675SRob Herring regulator-min-microvolt = <1800000>; 69*724ba675SRob Herring regulator-max-microvolt = <1800000>; 70*724ba675SRob Herring gpio = <&pio 2 15 GPIO_ACTIVE_HIGH>; 71*724ba675SRob Herring enable-active-high; 72*724ba675SRob Herring }; 73*724ba675SRob Herring 74*724ba675SRob Herring reg_1v8_nor: regulator-nor { 75*724ba675SRob Herring compatible = "regulator-fixed"; 76*724ba675SRob Herring regulator-name = "vdd-nor"; 77*724ba675SRob Herring regulator-min-microvolt = <1800000>; 78*724ba675SRob Herring regulator-max-microvolt = <1800000>; 79*724ba675SRob Herring gpio = <&pio 2 14 GPIO_ACTIVE_HIGH>; 80*724ba675SRob Herring enable-active-high; 81*724ba675SRob Herring vin-supply = <®_1v8>; 82*724ba675SRob Herring regulator-always-on; 83*724ba675SRob Herring }; 84*724ba675SRob Herring 85*724ba675SRob Herring reg_1v8_ctp: regulator-ctp { 86*724ba675SRob Herring compatible = "regulator-fixed"; 87*724ba675SRob Herring regulator-name = "vdd-ctp"; 88*724ba675SRob Herring regulator-min-microvolt = <1800000>; 89*724ba675SRob Herring regulator-max-microvolt = <1800000>; 90*724ba675SRob Herring gpio = <&pio 2 13 GPIO_ACTIVE_HIGH>; 91*724ba675SRob Herring enable-active-high; 92*724ba675SRob Herring vin-supply = <®_1v8>; 93*724ba675SRob Herring }; 94*724ba675SRob Herring 95*724ba675SRob Herring reg_3v3_mmc0: regulator-mmc0 { 96*724ba675SRob Herring compatible = "regulator-fixed"; 97*724ba675SRob Herring regulator-name = "vdd-mmc0"; 98*724ba675SRob Herring regulator-min-microvolt = <3300000>; 99*724ba675SRob Herring regulator-max-microvolt = <3300000>; 100*724ba675SRob Herring gpio = <&pio 4 4 GPIO_ACTIVE_LOW>; /* PE4 */ 101*724ba675SRob Herring vin-supply = <®_vcc3v3>; 102*724ba675SRob Herring }; 103*724ba675SRob Herring}; 104*724ba675SRob Herring 105*724ba675SRob Herring&cpu0 { 106*724ba675SRob Herring cpu-supply = <®_dcdc2>; 107*724ba675SRob Herring}; 108*724ba675SRob Herring 109*724ba675SRob Herring&ehci0 { 110*724ba675SRob Herring status = "okay"; 111*724ba675SRob Herring}; 112*724ba675SRob Herring 113*724ba675SRob Herring&i2c0 { 114*724ba675SRob Herring status = "okay"; 115*724ba675SRob Herring 116*724ba675SRob Herring axp209: pmic@34 { 117*724ba675SRob Herring reg = <0x34>; 118*724ba675SRob Herring interrupts = <0>; 119*724ba675SRob Herring }; 120*724ba675SRob Herring}; 121*724ba675SRob Herring 122*724ba675SRob Herring#include "axp209.dtsi" 123*724ba675SRob Herring 124*724ba675SRob Herring&i2c1 { 125*724ba675SRob Herring status = "okay"; 126*724ba675SRob Herring 127*724ba675SRob Herring pcf8563: rtc@51 { 128*724ba675SRob Herring compatible = "nxp,pcf8563"; 129*724ba675SRob Herring reg = <0x51>; 130*724ba675SRob Herring }; 131*724ba675SRob Herring}; 132*724ba675SRob Herring 133*724ba675SRob Herring&i2c2 { 134*724ba675SRob Herring status = "okay"; 135*724ba675SRob Herring 136*724ba675SRob Herring /* Touchpanel is connected here. */ 137*724ba675SRob Herring}; 138*724ba675SRob Herring 139*724ba675SRob Herring&lradc { 140*724ba675SRob Herring vref-supply = <®_ldo2>; 141*724ba675SRob Herring status = "okay"; 142*724ba675SRob Herring 143*724ba675SRob Herring button-200 { 144*724ba675SRob Herring label = "Home"; 145*724ba675SRob Herring linux,code = <KEY_HOME>; 146*724ba675SRob Herring channel = <0>; 147*724ba675SRob Herring voltage = <200000>; 148*724ba675SRob Herring }; 149*724ba675SRob Herring 150*724ba675SRob Herring button-400 { 151*724ba675SRob Herring label = "Menu"; 152*724ba675SRob Herring linux,code = <KEY_MENU>; 153*724ba675SRob Herring channel = <0>; 154*724ba675SRob Herring voltage = <400000>; 155*724ba675SRob Herring }; 156*724ba675SRob Herring}; 157*724ba675SRob Herring 158*724ba675SRob Herring&mmc0 { 159*724ba675SRob Herring vmmc-supply = <®_3v3_mmc0>; 160*724ba675SRob Herring bus-width = <4>; 161*724ba675SRob Herring cd-gpios = <&pio 6 0 GPIO_ACTIVE_LOW>; /* PG0 */ 162*724ba675SRob Herring status = "okay"; 163*724ba675SRob Herring}; 164*724ba675SRob Herring 165*724ba675SRob Herring&mmc2 { 166*724ba675SRob Herring pinctrl-names = "default"; 167*724ba675SRob Herring pinctrl-0 = <&mmc2_4bit_pc_pins>; 168*724ba675SRob Herring vmmc-supply = <®_vcc3v3>; 169*724ba675SRob Herring bus-width = <4>; 170*724ba675SRob Herring non-removable; 171*724ba675SRob Herring status = "okay"; 172*724ba675SRob Herring}; 173*724ba675SRob Herring 174*724ba675SRob Herring&ohci0 { 175*724ba675SRob Herring status = "okay"; 176*724ba675SRob Herring}; 177*724ba675SRob Herring 178*724ba675SRob Herring&otg_sram { 179*724ba675SRob Herring status = "okay"; 180*724ba675SRob Herring}; 181*724ba675SRob Herring 182*724ba675SRob Herring&pwm { 183*724ba675SRob Herring pinctrl-names = "default"; 184*724ba675SRob Herring pinctrl-0 = <&pwm0_pin>; 185*724ba675SRob Herring status = "okay"; 186*724ba675SRob Herring}; 187*724ba675SRob Herring 188*724ba675SRob Herring®_dcdc2 { 189*724ba675SRob Herring regulator-always-on; 190*724ba675SRob Herring regulator-min-microvolt = <1000000>; 191*724ba675SRob Herring regulator-max-microvolt = <1400000>; 192*724ba675SRob Herring regulator-name = "vdd-cpu"; 193*724ba675SRob Herring}; 194*724ba675SRob Herring 195*724ba675SRob Herring®_dcdc3 { 196*724ba675SRob Herring regulator-always-on; 197*724ba675SRob Herring regulator-min-microvolt = <1200000>; 198*724ba675SRob Herring regulator-max-microvolt = <1200000>; 199*724ba675SRob Herring regulator-name = "vdd-int-pll"; 200*724ba675SRob Herring}; 201*724ba675SRob Herring 202*724ba675SRob Herring®_ldo1 { 203*724ba675SRob Herring regulator-name = "vdd-rtc"; 204*724ba675SRob Herring}; 205*724ba675SRob Herring 206*724ba675SRob Herring®_ldo2 { 207*724ba675SRob Herring regulator-always-on; 208*724ba675SRob Herring regulator-min-microvolt = <3000000>; 209*724ba675SRob Herring regulator-max-microvolt = <3000000>; 210*724ba675SRob Herring regulator-name = "avcc"; 211*724ba675SRob Herring}; 212*724ba675SRob Herring 213*724ba675SRob Herring®_ldo3 { 214*724ba675SRob Herring regulator-min-microvolt = <3300000>; 215*724ba675SRob Herring regulator-max-microvolt = <3300000>; 216*724ba675SRob Herring regulator-name = "vcc-wifi"; 217*724ba675SRob Herring /* We need this otherwise the LDO3 would overload */ 218*724ba675SRob Herring regulator-soft-start; 219*724ba675SRob Herring regulator-ramp-delay = <1600>; 220*724ba675SRob Herring}; 221*724ba675SRob Herring 222*724ba675SRob Herring&spi2 { 223*724ba675SRob Herring pinctrl-names = "default"; 224*724ba675SRob Herring pinctrl-0 = <&spi2_pe_pins>, <&spi2_cs0_pe_pin>; 225*724ba675SRob Herring status = "okay"; 226*724ba675SRob Herring 227*724ba675SRob Herring epd_flash: flash@0 { 228*724ba675SRob Herring #address-cells = <1>; 229*724ba675SRob Herring #size-cells = <1>; 230*724ba675SRob Herring compatible = "macronix,mx25u4033", "jedec,spi-nor"; 231*724ba675SRob Herring reg = <0>; 232*724ba675SRob Herring spi-max-frequency = <4000000>; 233*724ba675SRob Herring }; 234*724ba675SRob Herring}; 235*724ba675SRob Herring 236*724ba675SRob Herring&uart1 { 237*724ba675SRob Herring pinctrl-names = "default"; 238*724ba675SRob Herring pinctrl-0 = <&uart1_pg_pins>; 239*724ba675SRob Herring status = "okay"; 240*724ba675SRob Herring}; 241*724ba675SRob Herring 242*724ba675SRob Herring&usb_otg { 243*724ba675SRob Herring dr_mode = "peripheral"; 244*724ba675SRob Herring status = "okay"; 245*724ba675SRob Herring}; 246*724ba675SRob Herring 247*724ba675SRob Herring&battery_power_supply { 248*724ba675SRob Herring status = "okay"; 249*724ba675SRob Herring}; 250*724ba675SRob Herring 251*724ba675SRob Herring&usb_power_supply { 252*724ba675SRob Herring status = "okay"; 253*724ba675SRob Herring}; 254*724ba675SRob Herring 255*724ba675SRob Herring&usbphy { 256*724ba675SRob Herring usb1_vbus-supply = <®_ldo3>; 257*724ba675SRob Herring status = "okay"; 258*724ba675SRob Herring}; 259