18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 28c2ecf20Sopenharmony_ci// Copyright (C) 2018 Amarula Solutions 38c2ecf20Sopenharmony_ci// Author: Jagan Teki <jagan@amarulasolutions.com> 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci/dts-v1/; 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#include "sun50i-h6.dtsi" 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci/ { 128c2ecf20Sopenharmony_ci model = "OrangePi One Plus"; 138c2ecf20Sopenharmony_ci compatible = "xunlong,orangepi-one-plus", "allwinner,sun50i-h6"; 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci aliases { 168c2ecf20Sopenharmony_ci serial0 = &uart0; 178c2ecf20Sopenharmony_ci }; 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci chosen { 208c2ecf20Sopenharmony_ci stdout-path = "serial0:115200n8"; 218c2ecf20Sopenharmony_ci }; 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci connector { 248c2ecf20Sopenharmony_ci compatible = "hdmi-connector"; 258c2ecf20Sopenharmony_ci type = "a"; 268c2ecf20Sopenharmony_ci ddc-en-gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>; /* PH2 */ 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci port { 298c2ecf20Sopenharmony_ci hdmi_con_in: endpoint { 308c2ecf20Sopenharmony_ci remote-endpoint = <&hdmi_out_con>; 318c2ecf20Sopenharmony_ci }; 328c2ecf20Sopenharmony_ci }; 338c2ecf20Sopenharmony_ci }; 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci ext_osc32k: ext_osc32k_clk { 368c2ecf20Sopenharmony_ci #clock-cells = <0>; 378c2ecf20Sopenharmony_ci compatible = "fixed-clock"; 388c2ecf20Sopenharmony_ci clock-frequency = <32768>; 398c2ecf20Sopenharmony_ci clock-output-names = "ext_osc32k"; 408c2ecf20Sopenharmony_ci }; 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci leds { 438c2ecf20Sopenharmony_ci compatible = "gpio-leds"; 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci power { 468c2ecf20Sopenharmony_ci label = "orangepi:red:power"; 478c2ecf20Sopenharmony_ci gpios = <&r_pio 0 4 GPIO_ACTIVE_HIGH>; /* PL4 */ 488c2ecf20Sopenharmony_ci default-state = "on"; 498c2ecf20Sopenharmony_ci }; 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ci status { 528c2ecf20Sopenharmony_ci label = "orangepi:green:status"; 538c2ecf20Sopenharmony_ci gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */ 548c2ecf20Sopenharmony_ci }; 558c2ecf20Sopenharmony_ci }; 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci reg_vcc5v: vcc5v { 588c2ecf20Sopenharmony_ci /* board wide 5V supply directly from the DC jack */ 598c2ecf20Sopenharmony_ci compatible = "regulator-fixed"; 608c2ecf20Sopenharmony_ci regulator-name = "vcc-5v"; 618c2ecf20Sopenharmony_ci regulator-min-microvolt = <5000000>; 628c2ecf20Sopenharmony_ci regulator-max-microvolt = <5000000>; 638c2ecf20Sopenharmony_ci regulator-always-on; 648c2ecf20Sopenharmony_ci }; 658c2ecf20Sopenharmony_ci}; 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci&de { 688c2ecf20Sopenharmony_ci status = "okay"; 698c2ecf20Sopenharmony_ci}; 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci&ehci0 { 728c2ecf20Sopenharmony_ci status = "okay"; 738c2ecf20Sopenharmony_ci}; 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ci&ehci3 { 768c2ecf20Sopenharmony_ci status = "okay"; 778c2ecf20Sopenharmony_ci}; 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci&gpu { 808c2ecf20Sopenharmony_ci mali-supply = <®_dcdcc>; 818c2ecf20Sopenharmony_ci status = "okay"; 828c2ecf20Sopenharmony_ci}; 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci&hdmi { 858c2ecf20Sopenharmony_ci status = "okay"; 868c2ecf20Sopenharmony_ci}; 878c2ecf20Sopenharmony_ci 888c2ecf20Sopenharmony_ci&hdmi_out { 898c2ecf20Sopenharmony_ci hdmi_out_con: endpoint { 908c2ecf20Sopenharmony_ci remote-endpoint = <&hdmi_con_in>; 918c2ecf20Sopenharmony_ci }; 928c2ecf20Sopenharmony_ci}; 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ci&mmc0 { 958c2ecf20Sopenharmony_ci vmmc-supply = <®_cldo1>; 968c2ecf20Sopenharmony_ci cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; 978c2ecf20Sopenharmony_ci bus-width = <4>; 988c2ecf20Sopenharmony_ci status = "okay"; 998c2ecf20Sopenharmony_ci}; 1008c2ecf20Sopenharmony_ci 1018c2ecf20Sopenharmony_ci&ohci0 { 1028c2ecf20Sopenharmony_ci status = "okay"; 1038c2ecf20Sopenharmony_ci}; 1048c2ecf20Sopenharmony_ci 1058c2ecf20Sopenharmony_ci&ohci3 { 1068c2ecf20Sopenharmony_ci status = "okay"; 1078c2ecf20Sopenharmony_ci}; 1088c2ecf20Sopenharmony_ci 1098c2ecf20Sopenharmony_ci&pio { 1108c2ecf20Sopenharmony_ci vcc-pc-supply = <®_bldo2>; 1118c2ecf20Sopenharmony_ci vcc-pd-supply = <®_cldo1>; 1128c2ecf20Sopenharmony_ci vcc-pg-supply = <®_aldo1>; 1138c2ecf20Sopenharmony_ci}; 1148c2ecf20Sopenharmony_ci 1158c2ecf20Sopenharmony_ci&r_i2c { 1168c2ecf20Sopenharmony_ci status = "okay"; 1178c2ecf20Sopenharmony_ci 1188c2ecf20Sopenharmony_ci axp805: pmic@36 { 1198c2ecf20Sopenharmony_ci compatible = "x-powers,axp805", "x-powers,axp806"; 1208c2ecf20Sopenharmony_ci reg = <0x36>; 1218c2ecf20Sopenharmony_ci interrupt-parent = <&r_intc>; 1228c2ecf20Sopenharmony_ci interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 1238c2ecf20Sopenharmony_ci interrupt-controller; 1248c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 1258c2ecf20Sopenharmony_ci x-powers,self-working-mode; 1268c2ecf20Sopenharmony_ci vina-supply = <®_vcc5v>; 1278c2ecf20Sopenharmony_ci vinb-supply = <®_vcc5v>; 1288c2ecf20Sopenharmony_ci vinc-supply = <®_vcc5v>; 1298c2ecf20Sopenharmony_ci vind-supply = <®_vcc5v>; 1308c2ecf20Sopenharmony_ci vine-supply = <®_vcc5v>; 1318c2ecf20Sopenharmony_ci aldoin-supply = <®_vcc5v>; 1328c2ecf20Sopenharmony_ci bldoin-supply = <®_vcc5v>; 1338c2ecf20Sopenharmony_ci cldoin-supply = <®_vcc5v>; 1348c2ecf20Sopenharmony_ci 1358c2ecf20Sopenharmony_ci regulators { 1368c2ecf20Sopenharmony_ci reg_aldo1: aldo1 { 1378c2ecf20Sopenharmony_ci regulator-always-on; 1388c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1398c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1408c2ecf20Sopenharmony_ci regulator-name = "vcc-pl"; 1418c2ecf20Sopenharmony_ci }; 1428c2ecf20Sopenharmony_ci 1438c2ecf20Sopenharmony_ci reg_aldo2: aldo2 { 1448c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1458c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1468c2ecf20Sopenharmony_ci regulator-name = "vcc-ac200"; 1478c2ecf20Sopenharmony_ci }; 1488c2ecf20Sopenharmony_ci 1498c2ecf20Sopenharmony_ci reg_aldo3: aldo3 { 1508c2ecf20Sopenharmony_ci regulator-always-on; 1518c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1528c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1538c2ecf20Sopenharmony_ci regulator-name = "vcc25-dram"; 1548c2ecf20Sopenharmony_ci }; 1558c2ecf20Sopenharmony_ci 1568c2ecf20Sopenharmony_ci reg_bldo1: bldo1 { 1578c2ecf20Sopenharmony_ci regulator-always-on; 1588c2ecf20Sopenharmony_ci regulator-min-microvolt = <1800000>; 1598c2ecf20Sopenharmony_ci regulator-max-microvolt = <1800000>; 1608c2ecf20Sopenharmony_ci regulator-name = "vcc-bias-pll"; 1618c2ecf20Sopenharmony_ci }; 1628c2ecf20Sopenharmony_ci 1638c2ecf20Sopenharmony_ci reg_bldo2: bldo2 { 1648c2ecf20Sopenharmony_ci regulator-always-on; 1658c2ecf20Sopenharmony_ci regulator-min-microvolt = <1800000>; 1668c2ecf20Sopenharmony_ci regulator-max-microvolt = <1800000>; 1678c2ecf20Sopenharmony_ci regulator-name = "vcc-efuse-pcie-hdmi-io"; 1688c2ecf20Sopenharmony_ci }; 1698c2ecf20Sopenharmony_ci 1708c2ecf20Sopenharmony_ci reg_bldo3: bldo3 { 1718c2ecf20Sopenharmony_ci regulator-always-on; 1728c2ecf20Sopenharmony_ci regulator-min-microvolt = <1800000>; 1738c2ecf20Sopenharmony_ci regulator-max-microvolt = <1800000>; 1748c2ecf20Sopenharmony_ci regulator-name = "vcc-dcxoio"; 1758c2ecf20Sopenharmony_ci }; 1768c2ecf20Sopenharmony_ci 1778c2ecf20Sopenharmony_ci bldo4 { 1788c2ecf20Sopenharmony_ci /* unused */ 1798c2ecf20Sopenharmony_ci }; 1808c2ecf20Sopenharmony_ci 1818c2ecf20Sopenharmony_ci reg_cldo1: cldo1 { 1828c2ecf20Sopenharmony_ci regulator-always-on; 1838c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1848c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1858c2ecf20Sopenharmony_ci regulator-name = "vcc-3v3"; 1868c2ecf20Sopenharmony_ci }; 1878c2ecf20Sopenharmony_ci 1888c2ecf20Sopenharmony_ci reg_cldo2: cldo2 { 1898c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1908c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1918c2ecf20Sopenharmony_ci regulator-name = "vcc-wifi-1"; 1928c2ecf20Sopenharmony_ci }; 1938c2ecf20Sopenharmony_ci 1948c2ecf20Sopenharmony_ci reg_cldo3: cldo3 { 1958c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1968c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1978c2ecf20Sopenharmony_ci regulator-name = "vcc-wifi-2"; 1988c2ecf20Sopenharmony_ci }; 1998c2ecf20Sopenharmony_ci 2008c2ecf20Sopenharmony_ci reg_dcdca: dcdca { 2018c2ecf20Sopenharmony_ci regulator-always-on; 2028c2ecf20Sopenharmony_ci regulator-min-microvolt = <810000>; 2038c2ecf20Sopenharmony_ci regulator-max-microvolt = <1080000>; 2048c2ecf20Sopenharmony_ci regulator-name = "vdd-cpu"; 2058c2ecf20Sopenharmony_ci }; 2068c2ecf20Sopenharmony_ci 2078c2ecf20Sopenharmony_ci reg_dcdcc: dcdcc { 2088c2ecf20Sopenharmony_ci regulator-enable-ramp-delay = <32000>; 2098c2ecf20Sopenharmony_ci regulator-min-microvolt = <810000>; 2108c2ecf20Sopenharmony_ci regulator-max-microvolt = <1080000>; 2118c2ecf20Sopenharmony_ci regulator-name = "vdd-gpu"; 2128c2ecf20Sopenharmony_ci }; 2138c2ecf20Sopenharmony_ci 2148c2ecf20Sopenharmony_ci reg_dcdcd: dcdcd { 2158c2ecf20Sopenharmony_ci regulator-always-on; 2168c2ecf20Sopenharmony_ci regulator-min-microvolt = <960000>; 2178c2ecf20Sopenharmony_ci regulator-max-microvolt = <960000>; 2188c2ecf20Sopenharmony_ci regulator-name = "vdd-sys"; 2198c2ecf20Sopenharmony_ci }; 2208c2ecf20Sopenharmony_ci 2218c2ecf20Sopenharmony_ci reg_dcdce: dcdce { 2228c2ecf20Sopenharmony_ci regulator-always-on; 2238c2ecf20Sopenharmony_ci regulator-min-microvolt = <1200000>; 2248c2ecf20Sopenharmony_ci regulator-max-microvolt = <1200000>; 2258c2ecf20Sopenharmony_ci regulator-name = "vcc-dram"; 2268c2ecf20Sopenharmony_ci }; 2278c2ecf20Sopenharmony_ci 2288c2ecf20Sopenharmony_ci sw { 2298c2ecf20Sopenharmony_ci /* unused */ 2308c2ecf20Sopenharmony_ci }; 2318c2ecf20Sopenharmony_ci }; 2328c2ecf20Sopenharmony_ci }; 2338c2ecf20Sopenharmony_ci}; 2348c2ecf20Sopenharmony_ci 2358c2ecf20Sopenharmony_ci&r_ir { 2368c2ecf20Sopenharmony_ci status = "okay"; 2378c2ecf20Sopenharmony_ci}; 2388c2ecf20Sopenharmony_ci 2398c2ecf20Sopenharmony_ci&r_pio { 2408c2ecf20Sopenharmony_ci vcc-pm-supply = <®_bldo3>; 2418c2ecf20Sopenharmony_ci}; 2428c2ecf20Sopenharmony_ci 2438c2ecf20Sopenharmony_ci&rtc { 2448c2ecf20Sopenharmony_ci clocks = <&ext_osc32k>; 2458c2ecf20Sopenharmony_ci}; 2468c2ecf20Sopenharmony_ci 2478c2ecf20Sopenharmony_ci&uart0 { 2488c2ecf20Sopenharmony_ci pinctrl-names = "default"; 2498c2ecf20Sopenharmony_ci pinctrl-0 = <&uart0_ph_pins>; 2508c2ecf20Sopenharmony_ci status = "okay"; 2518c2ecf20Sopenharmony_ci}; 2528c2ecf20Sopenharmony_ci 2538c2ecf20Sopenharmony_ci&usb2otg { 2548c2ecf20Sopenharmony_ci /* 2558c2ecf20Sopenharmony_ci * OrangePi Lite 2 and One Plus, where this DT is used, don't 2568c2ecf20Sopenharmony_ci * have a controllable VBUS even though they do have an ID pin. 2578c2ecf20Sopenharmony_ci * Using it as anything but a USB host is unsafe. 2588c2ecf20Sopenharmony_ci */ 2598c2ecf20Sopenharmony_ci dr_mode = "host"; 2608c2ecf20Sopenharmony_ci status = "okay"; 2618c2ecf20Sopenharmony_ci}; 2628c2ecf20Sopenharmony_ci 2638c2ecf20Sopenharmony_ci&usb2phy { 2648c2ecf20Sopenharmony_ci usb0_id_det-gpios = <&pio 2 6 GPIO_ACTIVE_HIGH>; /* PC6 */ 2658c2ecf20Sopenharmony_ci usb0_vbus-supply = <®_vcc5v>; 2668c2ecf20Sopenharmony_ci usb3_vbus-supply = <®_vcc5v>; 2678c2ecf20Sopenharmony_ci status = "okay"; 2688c2ecf20Sopenharmony_ci}; 269