1// SPDX-License-Identifier: (GPL-2.0+ or MIT) 2/* 3 * Copyright (C) 2019 Clément Péron <peron.clem@gmail.com> 4 */ 5 6/dts-v1/; 7 8#include "sun50i-h6.dtsi" 9 10#include <dt-bindings/gpio/gpio.h> 11 12/ { 13 model = "Beelink GS1"; 14 compatible = "azw,beelink-gs1", "allwinner,sun50i-h6"; 15 16 aliases { 17 ethernet0 = &emac; 18 serial0 = &uart0; 19 }; 20 21 chosen { 22 stdout-path = "serial0:115200n8"; 23 }; 24 25 connector { 26 compatible = "hdmi-connector"; 27 type = "a"; 28 29 port { 30 hdmi_con_in: endpoint { 31 remote-endpoint = <&hdmi_out_con>; 32 }; 33 }; 34 }; 35 36 leds { 37 compatible = "gpio-leds"; 38 39 power { 40 label = "beelink:white:power"; 41 gpios = <&r_pio 0 4 GPIO_ACTIVE_HIGH>; /* PL4 */ 42 default-state = "on"; 43 }; 44 }; 45 46 reg_vcc5v: vcc5v { 47 /* board wide 5V supply directly from the DC jack */ 48 compatible = "regulator-fixed"; 49 regulator-name = "vcc-5v"; 50 regulator-min-microvolt = <5000000>; 51 regulator-max-microvolt = <5000000>; 52 regulator-always-on; 53 }; 54}; 55 56&de { 57 status = "okay"; 58}; 59 60&ehci0 { 61 status = "okay"; 62}; 63 64&emac { 65 pinctrl-names = "default"; 66 pinctrl-0 = <&ext_rgmii_pins>; 67 phy-mode = "rgmii"; 68 phy-handle = <&ext_rgmii_phy>; 69 phy-supply = <®_aldo2>; 70 status = "okay"; 71}; 72 73&hdmi { 74 status = "okay"; 75}; 76 77&hdmi_out { 78 hdmi_out_con: endpoint { 79 remote-endpoint = <&hdmi_con_in>; 80 }; 81}; 82 83&mdio { 84 ext_rgmii_phy: ethernet-phy@1 { 85 compatible = "ethernet-phy-ieee802.3-c22"; 86 reg = <1>; 87 }; 88}; 89 90&mmc0 { 91 vmmc-supply = <®_cldo1>; 92 cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; 93 bus-width = <4>; 94 status = "okay"; 95}; 96 97&mmc2 { 98 vmmc-supply = <®_cldo1>; 99 vqmmc-supply = <®_bldo2>; 100 non-removable; 101 cap-mmc-hw-reset; 102 bus-width = <8>; 103 status = "okay"; 104}; 105 106&ohci0 { 107 status = "okay"; 108}; 109 110&pio { 111 vcc-pd-supply = <®_cldo1>; 112 vcc-pg-supply = <®_aldo1>; 113}; 114 115&r_i2c { 116 status = "okay"; 117 118 axp805: pmic@36 { 119 compatible = "x-powers,axp805", "x-powers,axp806"; 120 reg = <0x36>; 121 interrupt-parent = <&r_intc>; 122 interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 123 interrupt-controller; 124 #interrupt-cells = <1>; 125 x-powers,self-working-mode; 126 vina-supply = <®_vcc5v>; 127 vinb-supply = <®_vcc5v>; 128 vinc-supply = <®_vcc5v>; 129 vind-supply = <®_vcc5v>; 130 vine-supply = <®_vcc5v>; 131 aldoin-supply = <®_vcc5v>; 132 bldoin-supply = <®_vcc5v>; 133 cldoin-supply = <®_vcc5v>; 134 135 regulators { 136 reg_aldo1: aldo1 { 137 regulator-always-on; 138 regulator-min-microvolt = <3300000>; 139 regulator-max-microvolt = <3300000>; 140 regulator-name = "vcc-pl"; 141 }; 142 143 reg_aldo2: aldo2 { 144 regulator-min-microvolt = <3300000>; 145 regulator-max-microvolt = <3300000>; 146 regulator-name = "vcc-ac200"; 147 regulator-enable-ramp-delay = <100000>; 148 }; 149 150 reg_aldo3: aldo3 { 151 regulator-always-on; 152 regulator-min-microvolt = <3300000>; 153 regulator-max-microvolt = <3300000>; 154 regulator-name = "vcc25-dram"; 155 }; 156 157 reg_bldo1: bldo1 { 158 regulator-always-on; 159 regulator-min-microvolt = <1800000>; 160 regulator-max-microvolt = <1800000>; 161 regulator-name = "vcc-bias-pll"; 162 }; 163 164 reg_bldo2: bldo2 { 165 regulator-always-on; 166 regulator-min-microvolt = <1800000>; 167 regulator-max-microvolt = <1800000>; 168 regulator-name = "vcc-efuse-pcie-hdmi-io"; 169 }; 170 171 reg_bldo3: bldo3 { 172 regulator-always-on; 173 regulator-min-microvolt = <1800000>; 174 regulator-max-microvolt = <1800000>; 175 regulator-name = "vcc-dcxoio"; 176 }; 177 178 bldo4 { 179 /* unused */ 180 }; 181 182 reg_cldo1: cldo1 { 183 regulator-always-on; 184 regulator-min-microvolt = <3300000>; 185 regulator-max-microvolt = <3300000>; 186 regulator-name = "vcc-3v3"; 187 }; 188 189 reg_cldo2: cldo2 { 190 regulator-min-microvolt = <3300000>; 191 regulator-max-microvolt = <3300000>; 192 regulator-name = "vcc-wifi-1"; 193 }; 194 195 reg_cldo3: cldo3 { 196 regulator-min-microvolt = <3300000>; 197 regulator-max-microvolt = <3300000>; 198 regulator-name = "vcc-wifi-2"; 199 }; 200 201 reg_dcdca: dcdca { 202 regulator-always-on; 203 regulator-min-microvolt = <810000>; 204 regulator-max-microvolt = <1080000>; 205 regulator-name = "vdd-cpu"; 206 }; 207 208 reg_dcdcc: dcdcc { 209 regulator-min-microvolt = <810000>; 210 regulator-max-microvolt = <1080000>; 211 regulator-name = "vdd-gpu"; 212 }; 213 214 reg_dcdcd: dcdcd { 215 regulator-always-on; 216 regulator-min-microvolt = <960000>; 217 regulator-max-microvolt = <960000>; 218 regulator-name = "vdd-sys"; 219 }; 220 221 reg_dcdce: dcdce { 222 regulator-always-on; 223 regulator-min-microvolt = <1200000>; 224 regulator-max-microvolt = <1200000>; 225 regulator-name = "vcc-dram"; 226 }; 227 228 sw { 229 /* unused */ 230 }; 231 }; 232 }; 233}; 234 235&r_pio { 236 /* 237 * PL0 and PL1 are used for PMIC I2C 238 * don't enable the pl-supply else 239 * it will fail at boot 240 * 241 * vcc-pl-supply = <®_aldo1>; 242 */ 243 vcc-pm-supply = <®_aldo1>; 244}; 245 246&uart0 { 247 pinctrl-names = "default"; 248 pinctrl-0 = <&uart0_ph_pins>; 249 status = "okay"; 250}; 251 252&usb2otg { 253 dr_mode = "host"; 254 status = "okay"; 255}; 256 257&usb2phy { 258 usb0_vbus-supply = <®_vcc5v>; 259 status = "okay"; 260}; 261