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