1674ef1d0SIcenowy Zheng// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2674ef1d0SIcenowy Zheng/* 3674ef1d0SIcenowy Zheng * Copyright (C) 2019 Icenowy Zheng <icenowy@aosc.xyz> 4674ef1d0SIcenowy Zheng * 5674ef1d0SIcenowy Zheng */ 6674ef1d0SIcenowy Zheng 7674ef1d0SIcenowy Zheng/dts-v1/; 8674ef1d0SIcenowy Zheng 9674ef1d0SIcenowy Zheng#include "sun50i-a64.dtsi" 10674ef1d0SIcenowy Zheng#include "sun50i-a64-cpu-opp.dtsi" 11674ef1d0SIcenowy Zheng 12674ef1d0SIcenowy Zheng#include <dt-bindings/gpio/gpio.h> 13674ef1d0SIcenowy Zheng#include <dt-bindings/input/input.h> 14674ef1d0SIcenowy Zheng#include <dt-bindings/pwm/pwm.h> 15674ef1d0SIcenowy Zheng 16674ef1d0SIcenowy Zheng/ { 17*bdb574e5SIcenowy Zheng model = "PineTab, Development Sample"; 18674ef1d0SIcenowy Zheng compatible = "pine64,pinetab", "allwinner,sun50i-a64"; 19674ef1d0SIcenowy Zheng 20674ef1d0SIcenowy Zheng aliases { 21674ef1d0SIcenowy Zheng serial0 = &uart0; 22674ef1d0SIcenowy Zheng ethernet0 = &rtl8723cs; 23674ef1d0SIcenowy Zheng }; 24674ef1d0SIcenowy Zheng 25674ef1d0SIcenowy Zheng backlight: backlight { 26674ef1d0SIcenowy Zheng compatible = "pwm-backlight"; 27674ef1d0SIcenowy Zheng pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>; 28674ef1d0SIcenowy Zheng brightness-levels = <0 16 18 20 22 24 26 29 32 35 38 42 46 51 56 62 68 75 83 91 100>; 29674ef1d0SIcenowy Zheng default-brightness-level = <15>; 30674ef1d0SIcenowy Zheng enable-gpios = <&pio 3 23 GPIO_ACTIVE_HIGH>; /* PD23 */ 31674ef1d0SIcenowy Zheng power-supply = <&vdd_bl>; 32674ef1d0SIcenowy Zheng }; 33674ef1d0SIcenowy Zheng 34674ef1d0SIcenowy Zheng chosen { 35674ef1d0SIcenowy Zheng stdout-path = "serial0:115200n8"; 36674ef1d0SIcenowy Zheng }; 37674ef1d0SIcenowy Zheng 38674ef1d0SIcenowy Zheng i2c-csi { 39674ef1d0SIcenowy Zheng compatible = "i2c-gpio"; 40674ef1d0SIcenowy Zheng sda-gpios = <&pio 4 13 GPIO_ACTIVE_HIGH>; /* PE13 */ 41674ef1d0SIcenowy Zheng scl-gpios = <&pio 4 12 GPIO_ACTIVE_HIGH>; /* PE12 */ 42674ef1d0SIcenowy Zheng i2c-gpio,delay-us = <5>; 43674ef1d0SIcenowy Zheng #address-cells = <1>; 44674ef1d0SIcenowy Zheng #size-cells = <0>; 45674ef1d0SIcenowy Zheng 46674ef1d0SIcenowy Zheng /* Rear camera */ 47674ef1d0SIcenowy Zheng ov5640: camera@3c { 48674ef1d0SIcenowy Zheng compatible = "ovti,ov5640"; 49674ef1d0SIcenowy Zheng reg = <0x3c>; 50674ef1d0SIcenowy Zheng pinctrl-names = "default"; 51674ef1d0SIcenowy Zheng pinctrl-0 = <&csi_mclk_pin>; 52674ef1d0SIcenowy Zheng clocks = <&ccu CLK_CSI_MCLK>; 53674ef1d0SIcenowy Zheng clock-names = "xclk"; 54674ef1d0SIcenowy Zheng 55674ef1d0SIcenowy Zheng AVDD-supply = <®_dldo3>; 56674ef1d0SIcenowy Zheng DOVDD-supply = <®_aldo1>; 57674ef1d0SIcenowy Zheng DVDD-supply = <®_eldo3>; 58674ef1d0SIcenowy Zheng reset-gpios = <&pio 4 14 GPIO_ACTIVE_LOW>; /* PE14 */ 59674ef1d0SIcenowy Zheng powerdown-gpios = <&pio 4 15 GPIO_ACTIVE_HIGH>; /* PE15 */ 60674ef1d0SIcenowy Zheng 61674ef1d0SIcenowy Zheng port { 62674ef1d0SIcenowy Zheng ov5640_ep: endpoint { 63674ef1d0SIcenowy Zheng remote-endpoint = <&csi_ep>; 64674ef1d0SIcenowy Zheng bus-width = <8>; 65674ef1d0SIcenowy Zheng hsync-active = <1>; /* Active high */ 66674ef1d0SIcenowy Zheng vsync-active = <0>; /* Active low */ 67674ef1d0SIcenowy Zheng data-active = <1>; /* Active high */ 68674ef1d0SIcenowy Zheng pclk-sample = <1>; /* Rising */ 69674ef1d0SIcenowy Zheng }; 70674ef1d0SIcenowy Zheng }; 71674ef1d0SIcenowy Zheng }; 72674ef1d0SIcenowy Zheng }; 73674ef1d0SIcenowy Zheng 74674ef1d0SIcenowy Zheng speaker_amp: audio-amplifier { 75674ef1d0SIcenowy Zheng compatible = "simple-audio-amplifier"; 76674ef1d0SIcenowy Zheng enable-gpios = <&pio 7 7 GPIO_ACTIVE_HIGH>; /* PH7 */ 77674ef1d0SIcenowy Zheng sound-name-prefix = "Speaker Amp"; 78674ef1d0SIcenowy Zheng }; 79674ef1d0SIcenowy Zheng 80674ef1d0SIcenowy Zheng vdd_bl: regulator@0 { 81674ef1d0SIcenowy Zheng compatible = "regulator-fixed"; 82674ef1d0SIcenowy Zheng regulator-name = "bl-3v3"; 83674ef1d0SIcenowy Zheng regulator-min-microvolt = <3300000>; 84674ef1d0SIcenowy Zheng regulator-max-microvolt = <3300000>; 85674ef1d0SIcenowy Zheng gpio = <&pio 7 6 GPIO_ACTIVE_HIGH>; /* PH6 */ 86674ef1d0SIcenowy Zheng enable-active-high; 87674ef1d0SIcenowy Zheng }; 88674ef1d0SIcenowy Zheng 89674ef1d0SIcenowy Zheng wifi_pwrseq: wifi_pwrseq { 90674ef1d0SIcenowy Zheng compatible = "mmc-pwrseq-simple"; 91674ef1d0SIcenowy Zheng reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ 92674ef1d0SIcenowy Zheng post-power-on-delay-ms = <200>; 93674ef1d0SIcenowy Zheng }; 94674ef1d0SIcenowy Zheng}; 95674ef1d0SIcenowy Zheng 96674ef1d0SIcenowy Zheng&codec { 97674ef1d0SIcenowy Zheng status = "okay"; 98674ef1d0SIcenowy Zheng}; 99674ef1d0SIcenowy Zheng 100674ef1d0SIcenowy Zheng&codec_analog { 1015f39dd23SSamuel Holland cpvdd-supply = <®_eldo1>; 102674ef1d0SIcenowy Zheng status = "okay"; 103674ef1d0SIcenowy Zheng}; 104674ef1d0SIcenowy Zheng 105674ef1d0SIcenowy Zheng&cpu0 { 106674ef1d0SIcenowy Zheng cpu-supply = <®_dcdc2>; 107674ef1d0SIcenowy Zheng}; 108674ef1d0SIcenowy Zheng 109674ef1d0SIcenowy Zheng&cpu1 { 110674ef1d0SIcenowy Zheng cpu-supply = <®_dcdc2>; 111674ef1d0SIcenowy Zheng}; 112674ef1d0SIcenowy Zheng 113674ef1d0SIcenowy Zheng&cpu2 { 114674ef1d0SIcenowy Zheng cpu-supply = <®_dcdc2>; 115674ef1d0SIcenowy Zheng}; 116674ef1d0SIcenowy Zheng 117674ef1d0SIcenowy Zheng&cpu3 { 118674ef1d0SIcenowy Zheng cpu-supply = <®_dcdc2>; 119674ef1d0SIcenowy Zheng}; 120674ef1d0SIcenowy Zheng 121674ef1d0SIcenowy Zheng&csi { 122674ef1d0SIcenowy Zheng status = "okay"; 123674ef1d0SIcenowy Zheng 124674ef1d0SIcenowy Zheng port { 125674ef1d0SIcenowy Zheng csi_ep: endpoint { 126674ef1d0SIcenowy Zheng remote-endpoint = <&ov5640_ep>; 127674ef1d0SIcenowy Zheng bus-width = <8>; 128674ef1d0SIcenowy Zheng hsync-active = <1>; /* Active high */ 129674ef1d0SIcenowy Zheng vsync-active = <0>; /* Active low */ 130674ef1d0SIcenowy Zheng data-active = <1>; /* Active high */ 131674ef1d0SIcenowy Zheng pclk-sample = <1>; /* Rising */ 132674ef1d0SIcenowy Zheng }; 133674ef1d0SIcenowy Zheng }; 134674ef1d0SIcenowy Zheng}; 135674ef1d0SIcenowy Zheng 136674ef1d0SIcenowy Zheng&dai { 137674ef1d0SIcenowy Zheng status = "okay"; 138674ef1d0SIcenowy Zheng}; 139674ef1d0SIcenowy Zheng 140674ef1d0SIcenowy Zheng&de { 141674ef1d0SIcenowy Zheng status = "okay"; 142674ef1d0SIcenowy Zheng}; 143674ef1d0SIcenowy Zheng 144674ef1d0SIcenowy Zheng&dphy { 145674ef1d0SIcenowy Zheng status = "okay"; 146674ef1d0SIcenowy Zheng}; 147674ef1d0SIcenowy Zheng 148674ef1d0SIcenowy Zheng&dsi { 149674ef1d0SIcenowy Zheng vcc-dsi-supply = <®_dldo1>; 150674ef1d0SIcenowy Zheng status = "okay"; 151674ef1d0SIcenowy Zheng 152674ef1d0SIcenowy Zheng panel@0 { 153674ef1d0SIcenowy Zheng compatible = "feixin,k101-im2ba02"; 154674ef1d0SIcenowy Zheng reg = <0>; 155674ef1d0SIcenowy Zheng avdd-supply = <®_dc1sw>; 156674ef1d0SIcenowy Zheng dvdd-supply = <®_dc1sw>; 157674ef1d0SIcenowy Zheng cvdd-supply = <®_ldo_io1>; 158674ef1d0SIcenowy Zheng reset-gpios = <&pio 3 24 GPIO_ACTIVE_HIGH>; /* PD24 */ 159674ef1d0SIcenowy Zheng backlight = <&backlight>; 160674ef1d0SIcenowy Zheng }; 161674ef1d0SIcenowy Zheng}; 162674ef1d0SIcenowy Zheng 163674ef1d0SIcenowy Zheng&ehci0 { 164674ef1d0SIcenowy Zheng status = "okay"; 165674ef1d0SIcenowy Zheng}; 166674ef1d0SIcenowy Zheng 167674ef1d0SIcenowy Zheng&ehci1 { 168674ef1d0SIcenowy Zheng status = "okay"; 169674ef1d0SIcenowy Zheng}; 170674ef1d0SIcenowy Zheng 171674ef1d0SIcenowy Zheng&i2c0 { 172674ef1d0SIcenowy Zheng status = "okay"; 173674ef1d0SIcenowy Zheng 174674ef1d0SIcenowy Zheng touchscreen@5d { 175674ef1d0SIcenowy Zheng compatible = "goodix,gt9271"; 176674ef1d0SIcenowy Zheng reg = <0x5d>; 177674ef1d0SIcenowy Zheng interrupt-parent = <&pio>; 178674ef1d0SIcenowy Zheng interrupts = <7 4 IRQ_TYPE_LEVEL_HIGH>; /* PH4 */ 179674ef1d0SIcenowy Zheng irq-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */ 180674ef1d0SIcenowy Zheng reset-gpios = <&pio 7 8 GPIO_ACTIVE_HIGH>; /* PH8 */ 181674ef1d0SIcenowy Zheng AVDD28-supply = <®_ldo_io1>; 182674ef1d0SIcenowy Zheng }; 183674ef1d0SIcenowy Zheng}; 184674ef1d0SIcenowy Zheng 185674ef1d0SIcenowy Zheng&i2c0_pins { 186674ef1d0SIcenowy Zheng bias-pull-up; 187674ef1d0SIcenowy Zheng}; 188674ef1d0SIcenowy Zheng 189674ef1d0SIcenowy Zheng&i2c1 { 190674ef1d0SIcenowy Zheng status = "okay"; 191674ef1d0SIcenowy Zheng 192674ef1d0SIcenowy Zheng /* TODO: add Bochs BMA223 accelerometer here */ 193674ef1d0SIcenowy Zheng}; 194674ef1d0SIcenowy Zheng 195674ef1d0SIcenowy Zheng&lradc { 196674ef1d0SIcenowy Zheng vref-supply = <®_aldo3>; 197674ef1d0SIcenowy Zheng status = "okay"; 198674ef1d0SIcenowy Zheng 199674ef1d0SIcenowy Zheng button-200 { 200674ef1d0SIcenowy Zheng label = "Volume Up"; 201674ef1d0SIcenowy Zheng linux,code = <KEY_VOLUMEUP>; 202674ef1d0SIcenowy Zheng channel = <0>; 203674ef1d0SIcenowy Zheng voltage = <200000>; 204674ef1d0SIcenowy Zheng }; 205674ef1d0SIcenowy Zheng 206674ef1d0SIcenowy Zheng button-400 { 207674ef1d0SIcenowy Zheng label = "Volume Down"; 208674ef1d0SIcenowy Zheng linux,code = <KEY_VOLUMEDOWN>; 209674ef1d0SIcenowy Zheng channel = <0>; 210674ef1d0SIcenowy Zheng voltage = <400000>; 211674ef1d0SIcenowy Zheng }; 212674ef1d0SIcenowy Zheng}; 213674ef1d0SIcenowy Zheng 214674ef1d0SIcenowy Zheng&mixer1 { 215674ef1d0SIcenowy Zheng status = "okay"; 216674ef1d0SIcenowy Zheng}; 217674ef1d0SIcenowy Zheng 218674ef1d0SIcenowy Zheng&mmc0 { 219674ef1d0SIcenowy Zheng pinctrl-names = "default"; 220674ef1d0SIcenowy Zheng pinctrl-0 = <&mmc0_pins>; 221674ef1d0SIcenowy Zheng vmmc-supply = <®_dcdc1>; 222674ef1d0SIcenowy Zheng cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; 223674ef1d0SIcenowy Zheng disable-wp; 224674ef1d0SIcenowy Zheng bus-width = <4>; 225674ef1d0SIcenowy Zheng status = "okay"; 226674ef1d0SIcenowy Zheng}; 227674ef1d0SIcenowy Zheng 228674ef1d0SIcenowy Zheng&mmc1 { 229674ef1d0SIcenowy Zheng pinctrl-names = "default"; 230674ef1d0SIcenowy Zheng pinctrl-0 = <&mmc1_pins>; 231674ef1d0SIcenowy Zheng vmmc-supply = <®_dldo4>; 232674ef1d0SIcenowy Zheng vqmmc-supply = <®_eldo1>; 233674ef1d0SIcenowy Zheng mmc-pwrseq = <&wifi_pwrseq>; 234674ef1d0SIcenowy Zheng bus-width = <4>; 235674ef1d0SIcenowy Zheng non-removable; 236674ef1d0SIcenowy Zheng status = "okay"; 237674ef1d0SIcenowy Zheng 238674ef1d0SIcenowy Zheng rtl8723cs: wifi@1 { 239674ef1d0SIcenowy Zheng reg = <1>; 240674ef1d0SIcenowy Zheng }; 241674ef1d0SIcenowy Zheng}; 242674ef1d0SIcenowy Zheng 243674ef1d0SIcenowy Zheng&mmc2 { 244674ef1d0SIcenowy Zheng pinctrl-names = "default"; 245674ef1d0SIcenowy Zheng pinctrl-0 = <&mmc2_pins>; 246674ef1d0SIcenowy Zheng vmmc-supply = <®_dcdc1>; 247674ef1d0SIcenowy Zheng vqmmc-supply = <®_dcdc1>; 248674ef1d0SIcenowy Zheng bus-width = <8>; 249674ef1d0SIcenowy Zheng non-removable; 250674ef1d0SIcenowy Zheng cap-mmc-hw-reset; 251674ef1d0SIcenowy Zheng status = "okay"; 252674ef1d0SIcenowy Zheng}; 253674ef1d0SIcenowy Zheng 254674ef1d0SIcenowy Zheng&ohci0 { 255674ef1d0SIcenowy Zheng status = "okay"; 256674ef1d0SIcenowy Zheng}; 257674ef1d0SIcenowy Zheng 258674ef1d0SIcenowy Zheng&pwm { 259674ef1d0SIcenowy Zheng status = "okay"; 260674ef1d0SIcenowy Zheng}; 261674ef1d0SIcenowy Zheng 262674ef1d0SIcenowy Zheng&r_rsb { 263674ef1d0SIcenowy Zheng status = "okay"; 264674ef1d0SIcenowy Zheng 265674ef1d0SIcenowy Zheng axp803: pmic@3a3 { 266674ef1d0SIcenowy Zheng compatible = "x-powers,axp803"; 267674ef1d0SIcenowy Zheng reg = <0x3a3>; 268674ef1d0SIcenowy Zheng interrupt-parent = <&r_intc>; 269674ef1d0SIcenowy Zheng interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 270674ef1d0SIcenowy Zheng x-powers,drive-vbus-en; 271674ef1d0SIcenowy Zheng }; 272674ef1d0SIcenowy Zheng}; 273674ef1d0SIcenowy Zheng 274674ef1d0SIcenowy Zheng#include "axp803.dtsi" 275674ef1d0SIcenowy Zheng 276674ef1d0SIcenowy Zheng&ac_power_supply { 277674ef1d0SIcenowy Zheng status = "okay"; 278674ef1d0SIcenowy Zheng}; 279674ef1d0SIcenowy Zheng 280674ef1d0SIcenowy Zheng&battery_power_supply { 281674ef1d0SIcenowy Zheng status = "okay"; 282674ef1d0SIcenowy Zheng}; 283674ef1d0SIcenowy Zheng 284674ef1d0SIcenowy Zheng®_aldo1 { 285674ef1d0SIcenowy Zheng regulator-min-microvolt = <2800000>; 286674ef1d0SIcenowy Zheng regulator-max-microvolt = <2800000>; 287674ef1d0SIcenowy Zheng regulator-name = "dovdd-csi"; 288674ef1d0SIcenowy Zheng}; 289674ef1d0SIcenowy Zheng 290674ef1d0SIcenowy Zheng®_aldo2 { 291674ef1d0SIcenowy Zheng regulator-always-on; 292674ef1d0SIcenowy Zheng regulator-min-microvolt = <1800000>; 293674ef1d0SIcenowy Zheng regulator-max-microvolt = <3300000>; 294674ef1d0SIcenowy Zheng regulator-name = "vcc-pl"; 295674ef1d0SIcenowy Zheng}; 296674ef1d0SIcenowy Zheng 297674ef1d0SIcenowy Zheng®_aldo3 { 298674ef1d0SIcenowy Zheng regulator-always-on; 299674ef1d0SIcenowy Zheng regulator-min-microvolt = <2700000>; 300674ef1d0SIcenowy Zheng regulator-max-microvolt = <3300000>; 301674ef1d0SIcenowy Zheng regulator-name = "vcc-pll-avcc"; 302674ef1d0SIcenowy Zheng}; 303674ef1d0SIcenowy Zheng 304674ef1d0SIcenowy Zheng®_dc1sw { 305674ef1d0SIcenowy Zheng regulator-name = "vcc-lcd"; 306674ef1d0SIcenowy Zheng}; 307674ef1d0SIcenowy Zheng 308674ef1d0SIcenowy Zheng®_dcdc1 { 309674ef1d0SIcenowy Zheng regulator-always-on; 310674ef1d0SIcenowy Zheng regulator-min-microvolt = <3300000>; 311674ef1d0SIcenowy Zheng regulator-max-microvolt = <3300000>; 312674ef1d0SIcenowy Zheng regulator-name = "vcc-3v3"; 313674ef1d0SIcenowy Zheng}; 314674ef1d0SIcenowy Zheng 315674ef1d0SIcenowy Zheng®_dcdc2 { 316674ef1d0SIcenowy Zheng regulator-always-on; 317674ef1d0SIcenowy Zheng regulator-min-microvolt = <1000000>; 318674ef1d0SIcenowy Zheng regulator-max-microvolt = <1300000>; 319674ef1d0SIcenowy Zheng regulator-name = "vdd-cpux"; 320674ef1d0SIcenowy Zheng}; 321674ef1d0SIcenowy Zheng 322674ef1d0SIcenowy Zheng/* DCDC3 is polyphased with DCDC2 */ 323674ef1d0SIcenowy Zheng 324674ef1d0SIcenowy Zheng®_dcdc5 { 325674ef1d0SIcenowy Zheng regulator-always-on; 326674ef1d0SIcenowy Zheng regulator-min-microvolt = <1200000>; 327674ef1d0SIcenowy Zheng regulator-max-microvolt = <1200000>; 328674ef1d0SIcenowy Zheng regulator-name = "vcc-dram"; 329674ef1d0SIcenowy Zheng}; 330674ef1d0SIcenowy Zheng 331674ef1d0SIcenowy Zheng®_dcdc6 { 332674ef1d0SIcenowy Zheng regulator-always-on; 333674ef1d0SIcenowy Zheng regulator-min-microvolt = <1100000>; 334674ef1d0SIcenowy Zheng regulator-max-microvolt = <1100000>; 335674ef1d0SIcenowy Zheng regulator-name = "vdd-sys"; 336674ef1d0SIcenowy Zheng}; 337674ef1d0SIcenowy Zheng 338674ef1d0SIcenowy Zheng®_dldo1 { 339674ef1d0SIcenowy Zheng regulator-always-on; 340674ef1d0SIcenowy Zheng regulator-min-microvolt = <3300000>; 341674ef1d0SIcenowy Zheng regulator-max-microvolt = <3300000>; 342674ef1d0SIcenowy Zheng regulator-name = "vcc-hdmi-dsi-sensor"; 343674ef1d0SIcenowy Zheng}; 344674ef1d0SIcenowy Zheng 345674ef1d0SIcenowy Zheng®_dldo3 { 346674ef1d0SIcenowy Zheng regulator-min-microvolt = <2800000>; 347674ef1d0SIcenowy Zheng regulator-max-microvolt = <2800000>; 348674ef1d0SIcenowy Zheng regulator-name = "avdd-csi"; 349674ef1d0SIcenowy Zheng}; 350674ef1d0SIcenowy Zheng 351674ef1d0SIcenowy Zheng®_dldo4 { 352674ef1d0SIcenowy Zheng regulator-min-microvolt = <3300000>; 353674ef1d0SIcenowy Zheng regulator-max-microvolt = <3300000>; 354674ef1d0SIcenowy Zheng regulator-name = "vcc-wifi"; 355674ef1d0SIcenowy Zheng}; 356674ef1d0SIcenowy Zheng 357674ef1d0SIcenowy Zheng®_drivevbus { 358674ef1d0SIcenowy Zheng regulator-name = "usb0-vbus"; 359674ef1d0SIcenowy Zheng status = "okay"; 360674ef1d0SIcenowy Zheng}; 361674ef1d0SIcenowy Zheng 362674ef1d0SIcenowy Zheng®_eldo1 { 363674ef1d0SIcenowy Zheng regulator-always-on; 364674ef1d0SIcenowy Zheng regulator-min-microvolt = <1800000>; 365674ef1d0SIcenowy Zheng regulator-max-microvolt = <1800000>; 366674ef1d0SIcenowy Zheng regulator-name = "cpvdd"; 367674ef1d0SIcenowy Zheng}; 368674ef1d0SIcenowy Zheng 369674ef1d0SIcenowy Zheng®_eldo2 { 370674ef1d0SIcenowy Zheng regulator-min-microvolt = <1800000>; 371674ef1d0SIcenowy Zheng regulator-max-microvolt = <1800000>; 372674ef1d0SIcenowy Zheng regulator-name = "vcca-1v8"; 373674ef1d0SIcenowy Zheng}; 374674ef1d0SIcenowy Zheng 375674ef1d0SIcenowy Zheng®_eldo3 { 376674ef1d0SIcenowy Zheng regulator-min-microvolt = <1800000>; 377674ef1d0SIcenowy Zheng regulator-max-microvolt = <1800000>; 378674ef1d0SIcenowy Zheng regulator-name = "dvdd-1v8-csi"; 379674ef1d0SIcenowy Zheng}; 380674ef1d0SIcenowy Zheng 381674ef1d0SIcenowy Zheng®_fldo1 { 382674ef1d0SIcenowy Zheng regulator-min-microvolt = <1200000>; 383674ef1d0SIcenowy Zheng regulator-max-microvolt = <1200000>; 384674ef1d0SIcenowy Zheng regulator-name = "vcc-1v2-hsic"; 385674ef1d0SIcenowy Zheng}; 386674ef1d0SIcenowy Zheng 387674ef1d0SIcenowy Zheng®_fldo2 { 388674ef1d0SIcenowy Zheng regulator-always-on; 389674ef1d0SIcenowy Zheng regulator-min-microvolt = <1100000>; 390674ef1d0SIcenowy Zheng regulator-max-microvolt = <1100000>; 391674ef1d0SIcenowy Zheng regulator-name = "vdd-cpus"; 392674ef1d0SIcenowy Zheng}; 393674ef1d0SIcenowy Zheng 394674ef1d0SIcenowy Zheng®_ldo_io0 { 395674ef1d0SIcenowy Zheng regulator-min-microvolt = <3300000>; 396674ef1d0SIcenowy Zheng regulator-max-microvolt = <3300000>; 397674ef1d0SIcenowy Zheng regulator-name = "vcc-usb"; 398674ef1d0SIcenowy Zheng status = "okay"; 399674ef1d0SIcenowy Zheng}; 400674ef1d0SIcenowy Zheng 401674ef1d0SIcenowy Zheng®_ldo_io1 { 402674ef1d0SIcenowy Zheng regulator-min-microvolt = <3300000>; 403674ef1d0SIcenowy Zheng regulator-max-microvolt = <3300000>; 404674ef1d0SIcenowy Zheng regulator-enable-ramp-delay = <3500000>; 405674ef1d0SIcenowy Zheng regulator-name = "vcc-touchscreen"; 406674ef1d0SIcenowy Zheng status = "okay"; 407674ef1d0SIcenowy Zheng}; 408674ef1d0SIcenowy Zheng 409674ef1d0SIcenowy Zheng®_rtc_ldo { 410674ef1d0SIcenowy Zheng regulator-name = "vcc-rtc"; 411674ef1d0SIcenowy Zheng}; 412674ef1d0SIcenowy Zheng 413674ef1d0SIcenowy Zheng&sound { 414674ef1d0SIcenowy Zheng status = "okay"; 415674ef1d0SIcenowy Zheng simple-audio-card,aux-devs = <&codec_analog>, <&speaker_amp>; 416674ef1d0SIcenowy Zheng simple-audio-card,widgets = "Microphone", "Internal Microphone Left", 417674ef1d0SIcenowy Zheng "Microphone", "Internal Microphone Right", 418674ef1d0SIcenowy Zheng "Headphone", "Headphone Jack", 419674ef1d0SIcenowy Zheng "Speaker", "Internal Speaker"; 420674ef1d0SIcenowy Zheng simple-audio-card,routing = 421631e6a35SSamuel Holland "Left DAC", "DACL", 422631e6a35SSamuel Holland "Right DAC", "DACR", 423674ef1d0SIcenowy Zheng "Speaker Amp INL", "LINEOUT", 424674ef1d0SIcenowy Zheng "Speaker Amp INR", "LINEOUT", 425674ef1d0SIcenowy Zheng "Internal Speaker", "Speaker Amp OUTL", 426674ef1d0SIcenowy Zheng "Internal Speaker", "Speaker Amp OUTR", 427674ef1d0SIcenowy Zheng "Headphone Jack", "HP", 428631e6a35SSamuel Holland "ADCL", "Left ADC", 429631e6a35SSamuel Holland "ADCR", "Right ADC", 430674ef1d0SIcenowy Zheng "Internal Microphone Left", "MBIAS", 431674ef1d0SIcenowy Zheng "MIC1", "Internal Microphone Left", 432674ef1d0SIcenowy Zheng "Internal Microphone Right", "HBIAS", 433674ef1d0SIcenowy Zheng "MIC2", "Internal Microphone Right"; 434674ef1d0SIcenowy Zheng}; 435674ef1d0SIcenowy Zheng 436674ef1d0SIcenowy Zheng&uart0 { 437674ef1d0SIcenowy Zheng pinctrl-names = "default"; 438674ef1d0SIcenowy Zheng pinctrl-0 = <&uart0_pb_pins>; 439674ef1d0SIcenowy Zheng status = "okay"; 440674ef1d0SIcenowy Zheng}; 441674ef1d0SIcenowy Zheng 442674ef1d0SIcenowy Zheng&usb_otg { 443674ef1d0SIcenowy Zheng dr_mode = "otg"; 444674ef1d0SIcenowy Zheng status = "okay"; 445674ef1d0SIcenowy Zheng}; 446674ef1d0SIcenowy Zheng 447674ef1d0SIcenowy Zheng&usb_power_supply { 448674ef1d0SIcenowy Zheng status = "okay"; 449674ef1d0SIcenowy Zheng}; 450674ef1d0SIcenowy Zheng 451674ef1d0SIcenowy Zheng&usbphy { 452674ef1d0SIcenowy Zheng usb0_id_det-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */ 453674ef1d0SIcenowy Zheng usb0_vbus_power-supply = <&usb_power_supply>; 454674ef1d0SIcenowy Zheng usb0_vbus-supply = <®_drivevbus>; 455674ef1d0SIcenowy Zheng usb1_vbus-supply = <®_ldo_io0>; 456674ef1d0SIcenowy Zheng status = "okay"; 457674ef1d0SIcenowy Zheng}; 458