18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 28c2ecf20Sopenharmony_ci// Copyright (c) 2017 Icenowy Zheng <icenowy@aosc.xyz> 38c2ecf20Sopenharmony_ci// Based on sun50i-a64-pine64.dts, which is: 48c2ecf20Sopenharmony_ci// Copyright (c) 2016 ARM Ltd. 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci/dts-v1/; 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci#include "sun50i-a64-sopine.dtsi" 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci/ { 118c2ecf20Sopenharmony_ci model = "SoPine with baseboard"; 128c2ecf20Sopenharmony_ci compatible = "pine64,sopine-baseboard", "pine64,sopine", 138c2ecf20Sopenharmony_ci "allwinner,sun50i-a64"; 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci aliases { 168c2ecf20Sopenharmony_ci ethernet0 = &emac; 178c2ecf20Sopenharmony_ci serial0 = &uart0; 188c2ecf20Sopenharmony_ci serial1 = &uart1; 198c2ecf20Sopenharmony_ci serial2 = &uart2; 208c2ecf20Sopenharmony_ci serial3 = &uart3; 218c2ecf20Sopenharmony_ci serial4 = &uart4; 228c2ecf20Sopenharmony_ci }; 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci chosen { 258c2ecf20Sopenharmony_ci stdout-path = "serial0:115200n8"; 268c2ecf20Sopenharmony_ci }; 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci hdmi-connector { 298c2ecf20Sopenharmony_ci compatible = "hdmi-connector"; 308c2ecf20Sopenharmony_ci type = "a"; 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci port { 338c2ecf20Sopenharmony_ci hdmi_con_in: endpoint { 348c2ecf20Sopenharmony_ci remote-endpoint = <&hdmi_out_con>; 358c2ecf20Sopenharmony_ci }; 368c2ecf20Sopenharmony_ci }; 378c2ecf20Sopenharmony_ci }; 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci reg_vcc1v8: vcc1v8 { 408c2ecf20Sopenharmony_ci compatible = "regulator-fixed"; 418c2ecf20Sopenharmony_ci regulator-name = "vcc1v8"; 428c2ecf20Sopenharmony_ci regulator-min-microvolt = <1800000>; 438c2ecf20Sopenharmony_ci regulator-max-microvolt = <1800000>; 448c2ecf20Sopenharmony_ci }; 458c2ecf20Sopenharmony_ci}; 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci&ac_power_supply { 488c2ecf20Sopenharmony_ci status = "okay"; 498c2ecf20Sopenharmony_ci}; 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ci&battery_power_supply { 528c2ecf20Sopenharmony_ci status = "okay"; 538c2ecf20Sopenharmony_ci}; 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci&codec { 568c2ecf20Sopenharmony_ci status = "okay"; 578c2ecf20Sopenharmony_ci}; 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci&codec_analog { 608c2ecf20Sopenharmony_ci status = "okay"; 618c2ecf20Sopenharmony_ci}; 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci&dai { 648c2ecf20Sopenharmony_ci status = "okay"; 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&ehci1 { 768c2ecf20Sopenharmony_ci status = "okay"; 778c2ecf20Sopenharmony_ci}; 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci&emac { 808c2ecf20Sopenharmony_ci pinctrl-names = "default"; 818c2ecf20Sopenharmony_ci pinctrl-0 = <&rgmii_pins>; 828c2ecf20Sopenharmony_ci phy-mode = "rgmii-txid"; 838c2ecf20Sopenharmony_ci phy-handle = <&ext_rgmii_phy>; 848c2ecf20Sopenharmony_ci phy-supply = <®_dc1sw>; 858c2ecf20Sopenharmony_ci status = "okay"; 868c2ecf20Sopenharmony_ci}; 878c2ecf20Sopenharmony_ci 888c2ecf20Sopenharmony_ci&hdmi { 898c2ecf20Sopenharmony_ci hvcc-supply = <®_dldo1>; 908c2ecf20Sopenharmony_ci status = "okay"; 918c2ecf20Sopenharmony_ci}; 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ci&hdmi_out { 948c2ecf20Sopenharmony_ci hdmi_out_con: endpoint { 958c2ecf20Sopenharmony_ci remote-endpoint = <&hdmi_con_in>; 968c2ecf20Sopenharmony_ci }; 978c2ecf20Sopenharmony_ci}; 988c2ecf20Sopenharmony_ci 998c2ecf20Sopenharmony_ci&mdio { 1008c2ecf20Sopenharmony_ci ext_rgmii_phy: ethernet-phy@1 { 1018c2ecf20Sopenharmony_ci compatible = "ethernet-phy-ieee802.3-c22"; 1028c2ecf20Sopenharmony_ci reg = <1>; 1038c2ecf20Sopenharmony_ci }; 1048c2ecf20Sopenharmony_ci}; 1058c2ecf20Sopenharmony_ci 1068c2ecf20Sopenharmony_ci&mmc2 { 1078c2ecf20Sopenharmony_ci pinctrl-names = "default"; 1088c2ecf20Sopenharmony_ci pinctrl-0 = <&mmc2_pins>; 1098c2ecf20Sopenharmony_ci vmmc-supply = <®_dcdc1>; 1108c2ecf20Sopenharmony_ci vqmmc-supply = <®_vcc1v8>; 1118c2ecf20Sopenharmony_ci bus-width = <8>; 1128c2ecf20Sopenharmony_ci non-removable; 1138c2ecf20Sopenharmony_ci cap-mmc-hw-reset; 1148c2ecf20Sopenharmony_ci status = "okay"; 1158c2ecf20Sopenharmony_ci}; 1168c2ecf20Sopenharmony_ci 1178c2ecf20Sopenharmony_ci&ohci0 { 1188c2ecf20Sopenharmony_ci status = "okay"; 1198c2ecf20Sopenharmony_ci}; 1208c2ecf20Sopenharmony_ci 1218c2ecf20Sopenharmony_ci&ohci1 { 1228c2ecf20Sopenharmony_ci status = "okay"; 1238c2ecf20Sopenharmony_ci}; 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ci®_dc1sw { 1268c2ecf20Sopenharmony_ci /* 1278c2ecf20Sopenharmony_ci * Ethernet PHY needs 30ms to properly power up and some more 1288c2ecf20Sopenharmony_ci * to initialize. 100ms should be plenty of time to finish 1298c2ecf20Sopenharmony_ci * whole process. 1308c2ecf20Sopenharmony_ci */ 1318c2ecf20Sopenharmony_ci regulator-enable-ramp-delay = <100000>; 1328c2ecf20Sopenharmony_ci regulator-name = "vcc-phy"; 1338c2ecf20Sopenharmony_ci}; 1348c2ecf20Sopenharmony_ci 1358c2ecf20Sopenharmony_ci®_dldo1 { 1368c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1378c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1388c2ecf20Sopenharmony_ci regulator-name = "vcc-hdmi"; 1398c2ecf20Sopenharmony_ci}; 1408c2ecf20Sopenharmony_ci 1418c2ecf20Sopenharmony_ci®_dldo2 { 1428c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1438c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1448c2ecf20Sopenharmony_ci regulator-name = "vcc-mipi"; 1458c2ecf20Sopenharmony_ci}; 1468c2ecf20Sopenharmony_ci 1478c2ecf20Sopenharmony_ci®_dldo4 { 1488c2ecf20Sopenharmony_ci regulator-min-microvolt = <3300000>; 1498c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1508c2ecf20Sopenharmony_ci regulator-name = "vcc-wifi"; 1518c2ecf20Sopenharmony_ci}; 1528c2ecf20Sopenharmony_ci 1538c2ecf20Sopenharmony_ci&simplefb_hdmi { 1548c2ecf20Sopenharmony_ci vcc-hdmi-supply = <®_dldo1>; 1558c2ecf20Sopenharmony_ci}; 1568c2ecf20Sopenharmony_ci 1578c2ecf20Sopenharmony_ci&sound { 1588c2ecf20Sopenharmony_ci simple-audio-card,aux-devs = <&codec_analog>; 1598c2ecf20Sopenharmony_ci simple-audio-card,widgets = "Microphone", "Microphone Jack", 1608c2ecf20Sopenharmony_ci "Headphone", "Headphone Jack"; 1618c2ecf20Sopenharmony_ci simple-audio-card,routing = 1628c2ecf20Sopenharmony_ci "Left DAC", "DACL", 1638c2ecf20Sopenharmony_ci "Right DAC", "DACR", 1648c2ecf20Sopenharmony_ci "Headphone Jack", "HP", 1658c2ecf20Sopenharmony_ci "ADCL", "Left ADC", 1668c2ecf20Sopenharmony_ci "ADCR", "Right ADC", 1678c2ecf20Sopenharmony_ci "MIC2", "Microphone Jack"; 1688c2ecf20Sopenharmony_ci status = "okay"; 1698c2ecf20Sopenharmony_ci}; 1708c2ecf20Sopenharmony_ci 1718c2ecf20Sopenharmony_ci&uart0 { 1728c2ecf20Sopenharmony_ci pinctrl-names = "default"; 1738c2ecf20Sopenharmony_ci pinctrl-0 = <&uart0_pb_pins>; 1748c2ecf20Sopenharmony_ci status = "okay"; 1758c2ecf20Sopenharmony_ci}; 1768c2ecf20Sopenharmony_ci 1778c2ecf20Sopenharmony_ci/* On Pi-2 connector */ 1788c2ecf20Sopenharmony_ci&uart2 { 1798c2ecf20Sopenharmony_ci pinctrl-names = "default"; 1808c2ecf20Sopenharmony_ci pinctrl-0 = <&uart2_pins>; 1818c2ecf20Sopenharmony_ci status = "disabled"; 1828c2ecf20Sopenharmony_ci}; 1838c2ecf20Sopenharmony_ci 1848c2ecf20Sopenharmony_ci/* On Euler connector */ 1858c2ecf20Sopenharmony_ci&uart3 { 1868c2ecf20Sopenharmony_ci pinctrl-names = "default"; 1878c2ecf20Sopenharmony_ci pinctrl-0 = <&uart3_pins>; 1888c2ecf20Sopenharmony_ci status = "disabled"; 1898c2ecf20Sopenharmony_ci}; 1908c2ecf20Sopenharmony_ci 1918c2ecf20Sopenharmony_ci/* On Euler connector, RTS/CTS optional */ 1928c2ecf20Sopenharmony_ci&uart4 { 1938c2ecf20Sopenharmony_ci pinctrl-names = "default"; 1948c2ecf20Sopenharmony_ci pinctrl-0 = <&uart4_pins>; 1958c2ecf20Sopenharmony_ci status = "disabled"; 1968c2ecf20Sopenharmony_ci}; 1978c2ecf20Sopenharmony_ci 1988c2ecf20Sopenharmony_ci&usb_otg { 1998c2ecf20Sopenharmony_ci dr_mode = "host"; 2008c2ecf20Sopenharmony_ci status = "okay"; 2018c2ecf20Sopenharmony_ci}; 2028c2ecf20Sopenharmony_ci 2038c2ecf20Sopenharmony_ci&usbphy { 2048c2ecf20Sopenharmony_ci status = "okay"; 2058c2ecf20Sopenharmony_ci}; 206