1*58c4020cSRask Ingemann Lambertsen/* 2*58c4020cSRask Ingemann Lambertsen * sun9i-a80-cx-a99.dts - Device Tree file for the Sunchip CX-A99 board. 3*58c4020cSRask Ingemann Lambertsen * 4*58c4020cSRask Ingemann Lambertsen * Copyright (C) 2017 Rask Ingemann Lambertsen <rask@formelder.dk> 5*58c4020cSRask Ingemann Lambertsen * 6*58c4020cSRask Ingemann Lambertsen * This file is dual-licensed: you can use it either under the terms 7*58c4020cSRask Ingemann Lambertsen * of the GPL or the X11 license, at your option. Note that this dual 8*58c4020cSRask Ingemann Lambertsen * licensing only applies to this file, and not this project as a 9*58c4020cSRask Ingemann Lambertsen * whole. 10*58c4020cSRask Ingemann Lambertsen * 11*58c4020cSRask Ingemann Lambertsen * a) This file is free software; you can redistribute it and/or 12*58c4020cSRask Ingemann Lambertsen * modify it under the terms of the GNU General Public License as 13*58c4020cSRask Ingemann Lambertsen * published by the Free Software Foundation; either version 2 of the 14*58c4020cSRask Ingemann Lambertsen * License, or (at your option) any later version. 15*58c4020cSRask Ingemann Lambertsen * 16*58c4020cSRask Ingemann Lambertsen * This file is distributed in the hope that it will be useful, 17*58c4020cSRask Ingemann Lambertsen * but WITHOUT ANY WARRANTY; without even the implied warranty of 18*58c4020cSRask Ingemann Lambertsen * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19*58c4020cSRask Ingemann Lambertsen * GNU General Public License for more details. 20*58c4020cSRask Ingemann Lambertsen * 21*58c4020cSRask Ingemann Lambertsen * Or, alternatively, 22*58c4020cSRask Ingemann Lambertsen * 23*58c4020cSRask Ingemann Lambertsen * b) Permission is hereby granted, free of charge, to any person 24*58c4020cSRask Ingemann Lambertsen * obtaining a copy of this software and associated documentation 25*58c4020cSRask Ingemann Lambertsen * files (the "Software"), to deal in the Software without 26*58c4020cSRask Ingemann Lambertsen * restriction, including without limitation the rights to use, 27*58c4020cSRask Ingemann Lambertsen * copy, modify, merge, publish, distribute, sublicense, and/or 28*58c4020cSRask Ingemann Lambertsen * sell copies of the Software, and to permit persons to whom the 29*58c4020cSRask Ingemann Lambertsen * Software is furnished to do so, subject to the following 30*58c4020cSRask Ingemann Lambertsen * conditions: 31*58c4020cSRask Ingemann Lambertsen * 32*58c4020cSRask Ingemann Lambertsen * The above copyright notice and this permission notice shall be 33*58c4020cSRask Ingemann Lambertsen * included in all copies or substantial portions of the Software. 34*58c4020cSRask Ingemann Lambertsen * 35*58c4020cSRask Ingemann Lambertsen * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 36*58c4020cSRask Ingemann Lambertsen * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 37*58c4020cSRask Ingemann Lambertsen * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 38*58c4020cSRask Ingemann Lambertsen * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 39*58c4020cSRask Ingemann Lambertsen * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 40*58c4020cSRask Ingemann Lambertsen * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 41*58c4020cSRask Ingemann Lambertsen * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 42*58c4020cSRask Ingemann Lambertsen * OTHER DEALINGS IN THE SOFTWARE. 43*58c4020cSRask Ingemann Lambertsen */ 44*58c4020cSRask Ingemann Lambertsen 45*58c4020cSRask Ingemann Lambertsen/* 46*58c4020cSRask Ingemann Lambertsen * The Sunchip CX-A99 board is found in several similar Android media 47*58c4020cSRask Ingemann Lambertsen * players, such as: 48*58c4020cSRask Ingemann Lambertsen * 49*58c4020cSRask Ingemann Lambertsen * Instabox Fantasy A8 (no external antenna) 50*58c4020cSRask Ingemann Lambertsen * Jesurun CS-Q8 (ships with larger remote control) 51*58c4020cSRask Ingemann Lambertsen * Jesurun Maxone 52*58c4020cSRask Ingemann Lambertsen * Rikomagic (RKM) MK80/MK80LE 53*58c4020cSRask Ingemann Lambertsen * Tronsmart Draco AW80 Meta/Telos 54*58c4020cSRask Ingemann Lambertsen * 55*58c4020cSRask Ingemann Lambertsen * See the Sunchip CX-A99 page on the Linux-sunxi wiki for more information. 56*58c4020cSRask Ingemann Lambertsen */ 57*58c4020cSRask Ingemann Lambertsen 58*58c4020cSRask Ingemann Lambertsen/dts-v1/; 59*58c4020cSRask Ingemann Lambertsen#include "sun9i-a80.dtsi" 60*58c4020cSRask Ingemann Lambertsen 61*58c4020cSRask Ingemann Lambertsen#include <dt-bindings/gpio/gpio.h> 62*58c4020cSRask Ingemann Lambertsen 63*58c4020cSRask Ingemann Lambertsen/ { 64*58c4020cSRask Ingemann Lambertsen model = "Sunchip CX-A99"; 65*58c4020cSRask Ingemann Lambertsen compatible = "sunchip,cx-a99", "allwinner,sun9i-a80"; 66*58c4020cSRask Ingemann Lambertsen 67*58c4020cSRask Ingemann Lambertsen aliases { 68*58c4020cSRask Ingemann Lambertsen serial0 = &uart0; 69*58c4020cSRask Ingemann Lambertsen }; 70*58c4020cSRask Ingemann Lambertsen 71*58c4020cSRask Ingemann Lambertsen chosen { 72*58c4020cSRask Ingemann Lambertsen stdout-path = "serial0:115200n8"; 73*58c4020cSRask Ingemann Lambertsen }; 74*58c4020cSRask Ingemann Lambertsen 75*58c4020cSRask Ingemann Lambertsen leds { 76*58c4020cSRask Ingemann Lambertsen compatible = "gpio-leds"; 77*58c4020cSRask Ingemann Lambertsen 78*58c4020cSRask Ingemann Lambertsen blue { 79*58c4020cSRask Ingemann Lambertsen gpios = <&pio 6 10 GPIO_ACTIVE_HIGH>; /* PG10 */ 80*58c4020cSRask Ingemann Lambertsen label = "cx-a99:blue:status"; 81*58c4020cSRask Ingemann Lambertsen }; 82*58c4020cSRask Ingemann Lambertsen 83*58c4020cSRask Ingemann Lambertsen red { 84*58c4020cSRask Ingemann Lambertsen gpios = <&pio 6 11 GPIO_ACTIVE_HIGH>; /* PG11 */ 85*58c4020cSRask Ingemann Lambertsen label = "cx-a99:red:status"; 86*58c4020cSRask Ingemann Lambertsen }; 87*58c4020cSRask Ingemann Lambertsen }; 88*58c4020cSRask Ingemann Lambertsen 89*58c4020cSRask Ingemann Lambertsen powerseq_wifi: powerseq-wifi { 90*58c4020cSRask Ingemann Lambertsen compatible = "mmc-pwrseq-simple"; 91*58c4020cSRask Ingemann Lambertsen clocks = <&ac100_rtc 1>; 92*58c4020cSRask Ingemann Lambertsen clock-names = "ext_clock"; 93*58c4020cSRask Ingemann Lambertsen reset-gpios = <&r_pio 1 0 GPIO_ACTIVE_LOW>; /* PM0 */ 94*58c4020cSRask Ingemann Lambertsen post-power-on-delay-ms = <1>; /* Minimum 2 cycles. */ 95*58c4020cSRask Ingemann Lambertsen }; 96*58c4020cSRask Ingemann Lambertsen 97*58c4020cSRask Ingemann Lambertsen /* USB 2.0 connector closest to the 12 V power connector. */ 98*58c4020cSRask Ingemann Lambertsen reg_usb1_vbus: regulator-usb1-vbus { 99*58c4020cSRask Ingemann Lambertsen compatible = "regulator-fixed"; 100*58c4020cSRask Ingemann Lambertsen regulator-name = "usb1-vbus"; 101*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <5000000>; 102*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <5000000>; 103*58c4020cSRask Ingemann Lambertsen gpio = <&r_pio 0 7 /* no flag support */ 0>; /* PL7 */ 104*58c4020cSRask Ingemann Lambertsen enable-active-high; 105*58c4020cSRask Ingemann Lambertsen }; 106*58c4020cSRask Ingemann Lambertsen 107*58c4020cSRask Ingemann Lambertsen /* USB 2.0 connector next to the SD card slot. */ 108*58c4020cSRask Ingemann Lambertsen reg_usb3_vbus: regulator-usb3-vbus { 109*58c4020cSRask Ingemann Lambertsen compatible = "regulator-fixed"; 110*58c4020cSRask Ingemann Lambertsen regulator-name = "usb3-vbus"; 111*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <5000000>; 112*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <5000000>; 113*58c4020cSRask Ingemann Lambertsen gpio = <&r_pio 0 8 /* no flag support */ 0>; /* PL8 */ 114*58c4020cSRask Ingemann Lambertsen enable-active-high; 115*58c4020cSRask Ingemann Lambertsen }; 116*58c4020cSRask Ingemann Lambertsen 117*58c4020cSRask Ingemann Lambertsen /* 118*58c4020cSRask Ingemann Lambertsen * OZ80120 voltage regulator for the four Cortex-A15 CPU cores. 119*58c4020cSRask Ingemann Lambertsen * Although the regulator can output 750 - 1200 mV, the permissible 120*58c4020cSRask Ingemann Lambertsen * range for the CPU cores is only 800 - 1100 mV. 121*58c4020cSRask Ingemann Lambertsen */ 122*58c4020cSRask Ingemann Lambertsen reg_vdd_cpub: regulator-vdd-cpub { 123*58c4020cSRask Ingemann Lambertsen compatible = "regulator-gpio"; 124*58c4020cSRask Ingemann Lambertsen 125*58c4020cSRask Ingemann Lambertsen regulator-always-on; 126*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = < 800000>; 127*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1100000>; 128*58c4020cSRask Ingemann Lambertsen regulator-name = "vdd-cpub"; 129*58c4020cSRask Ingemann Lambertsen 130*58c4020cSRask Ingemann Lambertsen /* Note: GPIO flags are not supported here . */ 131*58c4020cSRask Ingemann Lambertsen enable-gpio = <&r_pio 0 2 /* flags n/a */ 0>; /* PL2 */ 132*58c4020cSRask Ingemann Lambertsen enable-active-high; 133*58c4020cSRask Ingemann Lambertsen gpios = <&r_pio 0 3 /* no flag support */ 0>, /* PL3 */ 134*58c4020cSRask Ingemann Lambertsen <&r_pio 0 4 /* no flag support */ 0>, /* PL4 */ 135*58c4020cSRask Ingemann Lambertsen <&r_pio 0 5 /* no flag support */ 0>; /* PL5 */ 136*58c4020cSRask Ingemann Lambertsen 137*58c4020cSRask Ingemann Lambertsen gpios-states = <1 0 0>; 138*58c4020cSRask Ingemann Lambertsen states = < 750000 0x7 139*58c4020cSRask Ingemann Lambertsen 800000 0x3 140*58c4020cSRask Ingemann Lambertsen 850000 0x5 141*58c4020cSRask Ingemann Lambertsen 900000 0x1 142*58c4020cSRask Ingemann Lambertsen 950000 0x6 143*58c4020cSRask Ingemann Lambertsen 1000000 0x2 144*58c4020cSRask Ingemann Lambertsen 1100000 0x4 145*58c4020cSRask Ingemann Lambertsen 1200000 0x0>; 146*58c4020cSRask Ingemann Lambertsen }; 147*58c4020cSRask Ingemann Lambertsen}; 148*58c4020cSRask Ingemann Lambertsen 149*58c4020cSRask Ingemann Lambertsen&ehci0 { 150*58c4020cSRask Ingemann Lambertsen status = "okay"; 151*58c4020cSRask Ingemann Lambertsen}; 152*58c4020cSRask Ingemann Lambertsen 153*58c4020cSRask Ingemann Lambertsen&ehci2 { 154*58c4020cSRask Ingemann Lambertsen status = "okay"; 155*58c4020cSRask Ingemann Lambertsen}; 156*58c4020cSRask Ingemann Lambertsen 157*58c4020cSRask Ingemann Lambertsen/* 158*58c4020cSRask Ingemann Lambertsen * SD card slot. Although the GPIO pin for card detection is listed as capable 159*58c4020cSRask Ingemann Lambertsen * of generating interrupts in the "A80 User Manual", this doesn't work for 160*58c4020cSRask Ingemann Lambertsen * some unknown reason, so poll the GPIO for card detection. This is also what 161*58c4020cSRask Ingemann Lambertsen * the vendor sys_config.fex file specifies. 162*58c4020cSRask Ingemann Lambertsen */ 163*58c4020cSRask Ingemann Lambertsen&mmc0 { 164*58c4020cSRask Ingemann Lambertsen bus-width = <4>; 165*58c4020cSRask Ingemann Lambertsen cd-gpios = <&pio 7 17 GPIO_ACTIVE_LOW>; /* PH17 */ 166*58c4020cSRask Ingemann Lambertsen broken-cd; /* Poll. */ 167*58c4020cSRask Ingemann Lambertsen pinctrl-names = "default"; 168*58c4020cSRask Ingemann Lambertsen pinctrl-0 = <&mmc0_pins>; 169*58c4020cSRask Ingemann Lambertsen vmmc-supply = <®_dcdce>; 170*58c4020cSRask Ingemann Lambertsen status = "okay"; 171*58c4020cSRask Ingemann Lambertsen}; 172*58c4020cSRask Ingemann Lambertsen 173*58c4020cSRask Ingemann Lambertsen/* Ampak AP6335 IEEE 802.11 a/b/g/n/ac Wifi. */ 174*58c4020cSRask Ingemann Lambertsen&mmc1 { 175*58c4020cSRask Ingemann Lambertsen bus-width = <4>; 176*58c4020cSRask Ingemann Lambertsen non-removable; 177*58c4020cSRask Ingemann Lambertsen pinctrl-names = "default"; 178*58c4020cSRask Ingemann Lambertsen pinctrl-0 = <&mmc1_pins>; 179*58c4020cSRask Ingemann Lambertsen vmmc-supply = <®_cldo3>; /* See cldo2,cldo3 note. */ 180*58c4020cSRask Ingemann Lambertsen vqmmc-supply = <®_aldo2>; 181*58c4020cSRask Ingemann Lambertsen mmc-pwrseq = <&powerseq_wifi>; 182*58c4020cSRask Ingemann Lambertsen status = "okay"; 183*58c4020cSRask Ingemann Lambertsen}; 184*58c4020cSRask Ingemann Lambertsen 185*58c4020cSRask Ingemann Lambertsen/* On-board eMMC card. */ 186*58c4020cSRask Ingemann Lambertsen&mmc2 { 187*58c4020cSRask Ingemann Lambertsen bus-width = <8>; 188*58c4020cSRask Ingemann Lambertsen non-removable; 189*58c4020cSRask Ingemann Lambertsen pinctrl-names = "default"; 190*58c4020cSRask Ingemann Lambertsen pinctrl-0 = <&mmc2_8bit_pins>; 191*58c4020cSRask Ingemann Lambertsen vmmc-supply = <®_dcdce>; 192*58c4020cSRask Ingemann Lambertsen status = "okay"; 193*58c4020cSRask Ingemann Lambertsen}; 194*58c4020cSRask Ingemann Lambertsen 195*58c4020cSRask Ingemann Lambertsen&osc32k { 196*58c4020cSRask Ingemann Lambertsen clocks = <&ac100_rtc 0>; 197*58c4020cSRask Ingemann Lambertsen}; 198*58c4020cSRask Ingemann Lambertsen 199*58c4020cSRask Ingemann Lambertsen&r_ir { 200*58c4020cSRask Ingemann Lambertsen status = "okay"; 201*58c4020cSRask Ingemann Lambertsen}; 202*58c4020cSRask Ingemann Lambertsen 203*58c4020cSRask Ingemann Lambertsen&r_rsb { 204*58c4020cSRask Ingemann Lambertsen status = "okay"; 205*58c4020cSRask Ingemann Lambertsen 206*58c4020cSRask Ingemann Lambertsen ac100: codec@e89 { 207*58c4020cSRask Ingemann Lambertsen compatible = "x-powers,ac100"; 208*58c4020cSRask Ingemann Lambertsen reg = <0xe89>; 209*58c4020cSRask Ingemann Lambertsen 210*58c4020cSRask Ingemann Lambertsen ac100_codec: codec { 211*58c4020cSRask Ingemann Lambertsen compatible = "x-powers,ac100-codec"; 212*58c4020cSRask Ingemann Lambertsen interrupt-parent = <&r_pio>; 213*58c4020cSRask Ingemann Lambertsen interrupts = <0 9 IRQ_TYPE_LEVEL_LOW>; /* PL9 */ 214*58c4020cSRask Ingemann Lambertsen #clock-cells = <0>; 215*58c4020cSRask Ingemann Lambertsen clock-output-names = "4M_adda"; 216*58c4020cSRask Ingemann Lambertsen }; 217*58c4020cSRask Ingemann Lambertsen 218*58c4020cSRask Ingemann Lambertsen ac100_rtc: rtc { 219*58c4020cSRask Ingemann Lambertsen compatible = "x-powers,ac100-rtc"; 220*58c4020cSRask Ingemann Lambertsen interrupt-parent = <&nmi_intc>; 221*58c4020cSRask Ingemann Lambertsen interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 222*58c4020cSRask Ingemann Lambertsen clocks = <&ac100_codec>; 223*58c4020cSRask Ingemann Lambertsen #clock-cells = <1>; 224*58c4020cSRask Ingemann Lambertsen clock-output-names = "cko1_rtc", 225*58c4020cSRask Ingemann Lambertsen "cko2_rtc", 226*58c4020cSRask Ingemann Lambertsen "cko3_rtc"; 227*58c4020cSRask Ingemann Lambertsen }; 228*58c4020cSRask Ingemann Lambertsen }; 229*58c4020cSRask Ingemann Lambertsen 230*58c4020cSRask Ingemann Lambertsen pmic@745 { 231*58c4020cSRask Ingemann Lambertsen compatible = "x-powers,axp808", "x-powers,axp806"; 232*58c4020cSRask Ingemann Lambertsen x-powers,master-mode; 233*58c4020cSRask Ingemann Lambertsen reg = <0x745>; 234*58c4020cSRask Ingemann Lambertsen interrupt-parent = <&nmi_intc>; 235*58c4020cSRask Ingemann Lambertsen interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 236*58c4020cSRask Ingemann Lambertsen interrupt-controller; 237*58c4020cSRask Ingemann Lambertsen #interrupt-cells = <1>; 238*58c4020cSRask Ingemann Lambertsen 239*58c4020cSRask Ingemann Lambertsen swin-supply = <®_dcdce>; 240*58c4020cSRask Ingemann Lambertsen 241*58c4020cSRask Ingemann Lambertsen regulators { 242*58c4020cSRask Ingemann Lambertsen reg_aldo1: aldo1 { 243*58c4020cSRask Ingemann Lambertsen regulator-boot-on; 244*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <3000000>; 245*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <3000000>; 246*58c4020cSRask Ingemann Lambertsen regulator-name = "vcc-3v0"; 247*58c4020cSRask Ingemann Lambertsen }; 248*58c4020cSRask Ingemann Lambertsen 249*58c4020cSRask Ingemann Lambertsen /* Supplies pin groups G and M. */ 250*58c4020cSRask Ingemann Lambertsen reg_aldo2: aldo2 { 251*58c4020cSRask Ingemann Lambertsen regulator-boot-on; 252*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <1800000>; 253*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <3600000>; 254*58c4020cSRask Ingemann Lambertsen regulator-name = "vddio-wifi-codec"; 255*58c4020cSRask Ingemann Lambertsen }; 256*58c4020cSRask Ingemann Lambertsen 257*58c4020cSRask Ingemann Lambertsen reg_aldo3: aldo3 { 258*58c4020cSRask Ingemann Lambertsen regulator-boot-on; 259*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <2500000>; 260*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <2500000>; 261*58c4020cSRask Ingemann Lambertsen regulator-name = "vddio-gmac"; 262*58c4020cSRask Ingemann Lambertsen }; 263*58c4020cSRask Ingemann Lambertsen 264*58c4020cSRask Ingemann Lambertsen reg_bldo1: bldo1 { 265*58c4020cSRask Ingemann Lambertsen regulator-always-on; /* Hang if disabled */ 266*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <1700000>; 267*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1900000>; 268*58c4020cSRask Ingemann Lambertsen regulator-name = "vdd18-dll-vcc18-pll"; 269*58c4020cSRask Ingemann Lambertsen }; 270*58c4020cSRask Ingemann Lambertsen 271*58c4020cSRask Ingemann Lambertsen reg_bldo2: bldo2 { 272*58c4020cSRask Ingemann Lambertsen regulator-always-on; /* Hang if disabled */ 273*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = < 800000>; 274*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1100000>; 275*58c4020cSRask Ingemann Lambertsen regulator-name = "vdd-cpus"; 276*58c4020cSRask Ingemann Lambertsen }; 277*58c4020cSRask Ingemann Lambertsen 278*58c4020cSRask Ingemann Lambertsen reg_bldo3: bldo3 { 279*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <1100000>; 280*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1300000>; 281*58c4020cSRask Ingemann Lambertsen regulator-name = "vcc12-hsic"; 282*58c4020cSRask Ingemann Lambertsen }; 283*58c4020cSRask Ingemann Lambertsen 284*58c4020cSRask Ingemann Lambertsen reg_bldo4: bldo4 { 285*58c4020cSRask Ingemann Lambertsen regulator-boot-on; 286*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = < 800000>; 287*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1100000>; 288*58c4020cSRask Ingemann Lambertsen regulator-name = "vdd09-hdmi"; 289*58c4020cSRask Ingemann Lambertsen }; 290*58c4020cSRask Ingemann Lambertsen 291*58c4020cSRask Ingemann Lambertsen /* Supplies PLx pins which control some regulators. */ 292*58c4020cSRask Ingemann Lambertsen reg_cldo1: cldo1 { 293*58c4020cSRask Ingemann Lambertsen regulator-always-on; 294*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <3300000>; 295*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <3300000>; 296*58c4020cSRask Ingemann Lambertsen regulator-name = "vcc-pl-led"; 297*58c4020cSRask Ingemann Lambertsen }; 298*58c4020cSRask Ingemann Lambertsen 299*58c4020cSRask Ingemann Lambertsen /* 300*58c4020cSRask Ingemann Lambertsen * cldo2 and cldo3 are connected in parallel. 301*58c4020cSRask Ingemann Lambertsen * There is currently no way to express that. 302*58c4020cSRask Ingemann Lambertsen * For now, use regulator-always-on on cldo2 and lock 303*58c4020cSRask Ingemann Lambertsen * the voltage on both to 3.3 V. 304*58c4020cSRask Ingemann Lambertsen */ 305*58c4020cSRask Ingemann Lambertsen reg_cldo2: cldo2 { 306*58c4020cSRask Ingemann Lambertsen regulator-always-on; 307*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <3300000>; 308*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <3300000>; 309*58c4020cSRask Ingemann Lambertsen regulator-name = "vbat2-wifi+bt"; 310*58c4020cSRask Ingemann Lambertsen }; 311*58c4020cSRask Ingemann Lambertsen 312*58c4020cSRask Ingemann Lambertsen reg_cldo3: cldo3 { 313*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <3300000>; 314*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <3300000>; 315*58c4020cSRask Ingemann Lambertsen regulator-name = "vbat1-wifi+bt"; 316*58c4020cSRask Ingemann Lambertsen }; 317*58c4020cSRask Ingemann Lambertsen 318*58c4020cSRask Ingemann Lambertsen reg_dcdca: dcdca { 319*58c4020cSRask Ingemann Lambertsen regulator-always-on; 320*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = < 800000>; 321*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1100000>; 322*58c4020cSRask Ingemann Lambertsen regulator-name = "vdd-cpua"; 323*58c4020cSRask Ingemann Lambertsen }; 324*58c4020cSRask Ingemann Lambertsen 325*58c4020cSRask Ingemann Lambertsen reg_dcdcb: dcdcb { 326*58c4020cSRask Ingemann Lambertsen regulator-always-on; 327*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <1450000>; 328*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1550000>; 329*58c4020cSRask Ingemann Lambertsen regulator-name = "vcc-dram"; 330*58c4020cSRask Ingemann Lambertsen }; 331*58c4020cSRask Ingemann Lambertsen 332*58c4020cSRask Ingemann Lambertsen reg_dcdcc: dcdcc { 333*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = < 800000>; 334*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1100000>; 335*58c4020cSRask Ingemann Lambertsen regulator-name = "vdd-gpu"; 336*58c4020cSRask Ingemann Lambertsen }; 337*58c4020cSRask Ingemann Lambertsen 338*58c4020cSRask Ingemann Lambertsen reg_dcdcd: dcdcd { 339*58c4020cSRask Ingemann Lambertsen regulator-always-on; /* Hang if disabled. */ 340*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = < 800000>; 341*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <1100000>; 342*58c4020cSRask Ingemann Lambertsen regulator-name = "vdd-sys"; 343*58c4020cSRask Ingemann Lambertsen }; 344*58c4020cSRask Ingemann Lambertsen 345*58c4020cSRask Ingemann Lambertsen /* Supplies pin groups B-F and H. */ 346*58c4020cSRask Ingemann Lambertsen reg_dcdce: dcdce { 347*58c4020cSRask Ingemann Lambertsen regulator-always-on; 348*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <3300000>; 349*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <3300000>; 350*58c4020cSRask Ingemann Lambertsen regulator-name = "vcc-io-mmc-spdif"; 351*58c4020cSRask Ingemann Lambertsen }; 352*58c4020cSRask Ingemann Lambertsen 353*58c4020cSRask Ingemann Lambertsen reg_sw: sw { 354*58c4020cSRask Ingemann Lambertsen regulator-min-microvolt = <3300000>; 355*58c4020cSRask Ingemann Lambertsen regulator-max-microvolt = <3300000>; 356*58c4020cSRask Ingemann Lambertsen regulator-name = "vcc-gmac-codec"; 357*58c4020cSRask Ingemann Lambertsen }; 358*58c4020cSRask Ingemann Lambertsen }; 359*58c4020cSRask Ingemann Lambertsen }; 360*58c4020cSRask Ingemann Lambertsen}; 361*58c4020cSRask Ingemann Lambertsen 362*58c4020cSRask Ingemann Lambertsen/* 363*58c4020cSRask Ingemann Lambertsen * 5-pin connector opposite of the SD card slot: 364*58c4020cSRask Ingemann Lambertsen * 1 = GND (pointed to by small triangle), 2 = GND, 3 = 3.3 V, 4 = RX, 5 = TX. 365*58c4020cSRask Ingemann Lambertsen */ 366*58c4020cSRask Ingemann Lambertsen&uart0 { 367*58c4020cSRask Ingemann Lambertsen pinctrl-names = "default"; 368*58c4020cSRask Ingemann Lambertsen pinctrl-0 = <&uart0_pins_a>; 369*58c4020cSRask Ingemann Lambertsen status = "okay"; 370*58c4020cSRask Ingemann Lambertsen}; 371*58c4020cSRask Ingemann Lambertsen 372*58c4020cSRask Ingemann Lambertsen&usbphy1 { 373*58c4020cSRask Ingemann Lambertsen phy-supply = <®_usb1_vbus>; 374*58c4020cSRask Ingemann Lambertsen status = "okay"; 375*58c4020cSRask Ingemann Lambertsen}; 376*58c4020cSRask Ingemann Lambertsen 377*58c4020cSRask Ingemann Lambertsen&usbphy3 { 378*58c4020cSRask Ingemann Lambertsen phy-supply = <®_usb3_vbus>; 379*58c4020cSRask Ingemann Lambertsen status = "okay"; 380*58c4020cSRask Ingemann Lambertsen}; 381