18fe62f12SOndrej Jirman// SPDX-License-Identifier: (GPL-2.0+ or MIT) 28fe62f12SOndrej Jirman/* 38fe62f12SOndrej Jirman * Copyright (C) 2019 Ondřej Jirman <megous@megous.com> 48fe62f12SOndrej Jirman */ 58fe62f12SOndrej Jirman 68fe62f12SOndrej Jirman/dts-v1/; 78fe62f12SOndrej Jirman 88fe62f12SOndrej Jirman#include "sun50i-h6.dtsi" 98fe62f12SOndrej Jirman 108fe62f12SOndrej Jirman#include <dt-bindings/gpio/gpio.h> 118fe62f12SOndrej Jirman 128fe62f12SOndrej Jirman/ { 138fe62f12SOndrej Jirman model = "OrangePi 3"; 148fe62f12SOndrej Jirman compatible = "xunlong,orangepi-3", "allwinner,sun50i-h6"; 158fe62f12SOndrej Jirman 168fe62f12SOndrej Jirman aliases { 178fe62f12SOndrej Jirman serial0 = &uart0; 188fe62f12SOndrej Jirman }; 198fe62f12SOndrej Jirman 208fe62f12SOndrej Jirman chosen { 218fe62f12SOndrej Jirman stdout-path = "serial0:115200n8"; 228fe62f12SOndrej Jirman }; 238fe62f12SOndrej Jirman 248fe62f12SOndrej Jirman leds { 258fe62f12SOndrej Jirman compatible = "gpio-leds"; 268fe62f12SOndrej Jirman 278fe62f12SOndrej Jirman power { 288fe62f12SOndrej Jirman label = "orangepi:red:power"; 298fe62f12SOndrej Jirman gpios = <&r_pio 0 4 GPIO_ACTIVE_HIGH>; /* PL4 */ 308fe62f12SOndrej Jirman default-state = "on"; 318fe62f12SOndrej Jirman }; 328fe62f12SOndrej Jirman 338fe62f12SOndrej Jirman status { 348fe62f12SOndrej Jirman label = "orangepi:green:status"; 358fe62f12SOndrej Jirman gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */ 368fe62f12SOndrej Jirman }; 378fe62f12SOndrej Jirman }; 388fe62f12SOndrej Jirman 398fe62f12SOndrej Jirman reg_vcc5v: vcc5v { 408fe62f12SOndrej Jirman /* board wide 5V supply directly from the DC jack */ 418fe62f12SOndrej Jirman compatible = "regulator-fixed"; 428fe62f12SOndrej Jirman regulator-name = "vcc-5v"; 438fe62f12SOndrej Jirman regulator-min-microvolt = <5000000>; 448fe62f12SOndrej Jirman regulator-max-microvolt = <5000000>; 458fe62f12SOndrej Jirman regulator-always-on; 468fe62f12SOndrej Jirman }; 478fe62f12SOndrej Jirman}; 488fe62f12SOndrej Jirman 498fe62f12SOndrej Jirman&cpu0 { 508fe62f12SOndrej Jirman cpu-supply = <®_dcdca>; 518fe62f12SOndrej Jirman}; 528fe62f12SOndrej Jirman 538fe62f12SOndrej Jirman&ehci0 { 548fe62f12SOndrej Jirman status = "okay"; 558fe62f12SOndrej Jirman}; 568fe62f12SOndrej Jirman 578fe62f12SOndrej Jirman&ehci3 { 588fe62f12SOndrej Jirman status = "okay"; 598fe62f12SOndrej Jirman}; 608fe62f12SOndrej Jirman 618fe62f12SOndrej Jirman&mmc0 { 628fe62f12SOndrej Jirman vmmc-supply = <®_cldo1>; 638fe62f12SOndrej Jirman cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ 648fe62f12SOndrej Jirman bus-width = <4>; 658fe62f12SOndrej Jirman status = "okay"; 668fe62f12SOndrej Jirman}; 678fe62f12SOndrej Jirman 688fe62f12SOndrej Jirman&ohci0 { 698fe62f12SOndrej Jirman status = "okay"; 708fe62f12SOndrej Jirman}; 718fe62f12SOndrej Jirman 728fe62f12SOndrej Jirman&ohci3 { 738fe62f12SOndrej Jirman status = "okay"; 748fe62f12SOndrej Jirman}; 758fe62f12SOndrej Jirman 768fe62f12SOndrej Jirman&pio { 778fe62f12SOndrej Jirman vcc-pc-supply = <®_bldo2>; 788fe62f12SOndrej Jirman vcc-pd-supply = <®_cldo1>; 798fe62f12SOndrej Jirman}; 808fe62f12SOndrej Jirman 818fe62f12SOndrej Jirman&r_i2c { 828fe62f12SOndrej Jirman status = "okay"; 838fe62f12SOndrej Jirman 848fe62f12SOndrej Jirman axp805: pmic@36 { 858fe62f12SOndrej Jirman compatible = "x-powers,axp805", "x-powers,axp806"; 868fe62f12SOndrej Jirman reg = <0x36>; 878fe62f12SOndrej Jirman interrupt-parent = <&r_intc>; 888fe62f12SOndrej Jirman interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 898fe62f12SOndrej Jirman interrupt-controller; 908fe62f12SOndrej Jirman #interrupt-cells = <1>; 918fe62f12SOndrej Jirman x-powers,self-working-mode; 928fe62f12SOndrej Jirman vina-supply = <®_vcc5v>; 938fe62f12SOndrej Jirman vinb-supply = <®_vcc5v>; 948fe62f12SOndrej Jirman vinc-supply = <®_vcc5v>; 958fe62f12SOndrej Jirman vind-supply = <®_vcc5v>; 968fe62f12SOndrej Jirman vine-supply = <®_vcc5v>; 978fe62f12SOndrej Jirman aldoin-supply = <®_vcc5v>; 988fe62f12SOndrej Jirman bldoin-supply = <®_vcc5v>; 998fe62f12SOndrej Jirman cldoin-supply = <®_vcc5v>; 1008fe62f12SOndrej Jirman 1018fe62f12SOndrej Jirman regulators { 1028fe62f12SOndrej Jirman reg_aldo1: aldo1 { 1038fe62f12SOndrej Jirman regulator-always-on; 1048fe62f12SOndrej Jirman regulator-min-microvolt = <3300000>; 1058fe62f12SOndrej Jirman regulator-max-microvolt = <3300000>; 1068fe62f12SOndrej Jirman regulator-name = "vcc-pl-led-ir"; 1078fe62f12SOndrej Jirman }; 1088fe62f12SOndrej Jirman 1098fe62f12SOndrej Jirman reg_aldo2: aldo2 { 1108fe62f12SOndrej Jirman regulator-min-microvolt = <3300000>; 1118fe62f12SOndrej Jirman regulator-max-microvolt = <3300000>; 1128fe62f12SOndrej Jirman regulator-name = "vcc33-audio-tv-ephy-mac"; 1138fe62f12SOndrej Jirman }; 1148fe62f12SOndrej Jirman 1158fe62f12SOndrej Jirman /* ALDO3 is shorted to CLDO1 */ 1168fe62f12SOndrej Jirman reg_aldo3: aldo3 { 1178fe62f12SOndrej Jirman regulator-always-on; 1188fe62f12SOndrej Jirman regulator-min-microvolt = <3300000>; 1198fe62f12SOndrej Jirman regulator-max-microvolt = <3300000>; 1208fe62f12SOndrej Jirman regulator-name = "vcc33-io-pd-emmc-sd-usb-uart-1"; 1218fe62f12SOndrej Jirman }; 1228fe62f12SOndrej Jirman 1238fe62f12SOndrej Jirman reg_bldo1: bldo1 { 1248fe62f12SOndrej Jirman regulator-always-on; 1258fe62f12SOndrej Jirman regulator-min-microvolt = <1800000>; 1268fe62f12SOndrej Jirman regulator-max-microvolt = <1800000>; 1278fe62f12SOndrej Jirman regulator-name = "vcc18-dram-bias-pll"; 1288fe62f12SOndrej Jirman }; 1298fe62f12SOndrej Jirman 1308fe62f12SOndrej Jirman reg_bldo2: bldo2 { 1318fe62f12SOndrej Jirman regulator-always-on; 1328fe62f12SOndrej Jirman regulator-min-microvolt = <1800000>; 1338fe62f12SOndrej Jirman regulator-max-microvolt = <1800000>; 1348fe62f12SOndrej Jirman regulator-name = "vcc-efuse-pcie-hdmi-pc"; 1358fe62f12SOndrej Jirman }; 1368fe62f12SOndrej Jirman 1378fe62f12SOndrej Jirman bldo3 { 1388fe62f12SOndrej Jirman /* unused */ 1398fe62f12SOndrej Jirman }; 1408fe62f12SOndrej Jirman 1418fe62f12SOndrej Jirman bldo4 { 1428fe62f12SOndrej Jirman /* unused */ 1438fe62f12SOndrej Jirman }; 1448fe62f12SOndrej Jirman 1458fe62f12SOndrej Jirman reg_cldo1: cldo1 { 1468fe62f12SOndrej Jirman regulator-always-on; 1478fe62f12SOndrej Jirman regulator-min-microvolt = <3300000>; 1488fe62f12SOndrej Jirman regulator-max-microvolt = <3300000>; 1498fe62f12SOndrej Jirman regulator-name = "vcc33-io-pd-emmc-sd-usb-uart-2"; 1508fe62f12SOndrej Jirman }; 1518fe62f12SOndrej Jirman 1528fe62f12SOndrej Jirman cldo2 { 1538fe62f12SOndrej Jirman /* unused */ 1548fe62f12SOndrej Jirman }; 1558fe62f12SOndrej Jirman 1568fe62f12SOndrej Jirman cldo3 { 1578fe62f12SOndrej Jirman /* unused */ 1588fe62f12SOndrej Jirman }; 1598fe62f12SOndrej Jirman 1608fe62f12SOndrej Jirman reg_dcdca: dcdca { 1618fe62f12SOndrej Jirman regulator-always-on; 1628fe62f12SOndrej Jirman regulator-min-microvolt = <800000>; 1638fe62f12SOndrej Jirman regulator-max-microvolt = <1160000>; 1648fe62f12SOndrej Jirman regulator-name = "vdd-cpu"; 1658fe62f12SOndrej Jirman }; 1668fe62f12SOndrej Jirman 1678fe62f12SOndrej Jirman reg_dcdcc: dcdcc { 1688fe62f12SOndrej Jirman regulator-min-microvolt = <810000>; 1698fe62f12SOndrej Jirman regulator-max-microvolt = <1080000>; 1708fe62f12SOndrej Jirman regulator-name = "vdd-gpu"; 1718fe62f12SOndrej Jirman }; 1728fe62f12SOndrej Jirman 1738fe62f12SOndrej Jirman reg_dcdcd: dcdcd { 1748fe62f12SOndrej Jirman regulator-always-on; 1758fe62f12SOndrej Jirman regulator-min-microvolt = <960000>; 1768fe62f12SOndrej Jirman regulator-max-microvolt = <960000>; 1778fe62f12SOndrej Jirman regulator-name = "vdd-sys"; 1788fe62f12SOndrej Jirman }; 1798fe62f12SOndrej Jirman 1808fe62f12SOndrej Jirman reg_dcdce: dcdce { 1818fe62f12SOndrej Jirman regulator-always-on; 1828fe62f12SOndrej Jirman regulator-min-microvolt = <1200000>; 1838fe62f12SOndrej Jirman regulator-max-microvolt = <1200000>; 1848fe62f12SOndrej Jirman regulator-name = "vcc-dram"; 1858fe62f12SOndrej Jirman }; 1868fe62f12SOndrej Jirman 1878fe62f12SOndrej Jirman sw { 1888fe62f12SOndrej Jirman /* unused */ 1898fe62f12SOndrej Jirman }; 1908fe62f12SOndrej Jirman }; 1918fe62f12SOndrej Jirman }; 1928fe62f12SOndrej Jirman}; 1938fe62f12SOndrej Jirman 1948fe62f12SOndrej Jirman&uart0 { 1958fe62f12SOndrej Jirman pinctrl-names = "default"; 1968fe62f12SOndrej Jirman pinctrl-0 = <&uart0_ph_pins>; 1978fe62f12SOndrej Jirman status = "okay"; 1988fe62f12SOndrej Jirman}; 1998fe62f12SOndrej Jirman 2008fe62f12SOndrej Jirman&usb2otg { 2018fe62f12SOndrej Jirman /* 2028fe62f12SOndrej Jirman * This board doesn't have a controllable VBUS even though it 2038fe62f12SOndrej Jirman * does have an ID pin. Using it as anything but a USB host is 2048fe62f12SOndrej Jirman * unsafe. 2058fe62f12SOndrej Jirman */ 2068fe62f12SOndrej Jirman dr_mode = "host"; 2078fe62f12SOndrej Jirman status = "okay"; 2088fe62f12SOndrej Jirman}; 2098fe62f12SOndrej Jirman 2108fe62f12SOndrej Jirman&usb2phy { 2118fe62f12SOndrej Jirman usb0_id_det-gpios = <&pio 2 15 GPIO_ACTIVE_HIGH>; /* PC15 */ 2128fe62f12SOndrej Jirman usb0_vbus-supply = <®_vcc5v>; 2138fe62f12SOndrej Jirman usb3_vbus-supply = <®_vcc5v>; 2148fe62f12SOndrej Jirman status = "okay"; 2158fe62f12SOndrej Jirman}; 216