1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2c66ec88fSEmmanuel Vadot// Copyright (c) 2017 Icenowy Zheng <icenowy@aosc.xyz> 3c66ec88fSEmmanuel Vadot// Based on sun50i-a64-pine64.dts, which is: 4c66ec88fSEmmanuel Vadot// Copyright (c) 2016 ARM Ltd. 5c66ec88fSEmmanuel Vadot 6c66ec88fSEmmanuel Vadot/dts-v1/; 7c66ec88fSEmmanuel Vadot 8c66ec88fSEmmanuel Vadot#include "sun50i-a64-sopine.dtsi" 9c66ec88fSEmmanuel Vadot 10c66ec88fSEmmanuel Vadot/ { 11*0e8011faSEmmanuel Vadot model = "Pine64 SOPINE on Baseboard carrier board"; 12c66ec88fSEmmanuel Vadot compatible = "pine64,sopine-baseboard", "pine64,sopine", 13c66ec88fSEmmanuel Vadot "allwinner,sun50i-a64"; 14c66ec88fSEmmanuel Vadot 15c66ec88fSEmmanuel Vadot aliases { 16c66ec88fSEmmanuel Vadot ethernet0 = &emac; 17c66ec88fSEmmanuel Vadot serial0 = &uart0; 18c66ec88fSEmmanuel Vadot serial1 = &uart1; 19c66ec88fSEmmanuel Vadot serial2 = &uart2; 20c66ec88fSEmmanuel Vadot serial3 = &uart3; 21c66ec88fSEmmanuel Vadot serial4 = &uart4; 22c66ec88fSEmmanuel Vadot }; 23c66ec88fSEmmanuel Vadot 24c66ec88fSEmmanuel Vadot chosen { 25c66ec88fSEmmanuel Vadot stdout-path = "serial0:115200n8"; 26c66ec88fSEmmanuel Vadot }; 27c66ec88fSEmmanuel Vadot 28c66ec88fSEmmanuel Vadot hdmi-connector { 29c66ec88fSEmmanuel Vadot compatible = "hdmi-connector"; 30c66ec88fSEmmanuel Vadot type = "a"; 31c66ec88fSEmmanuel Vadot 32c66ec88fSEmmanuel Vadot port { 33c66ec88fSEmmanuel Vadot hdmi_con_in: endpoint { 34c66ec88fSEmmanuel Vadot remote-endpoint = <&hdmi_out_con>; 35c66ec88fSEmmanuel Vadot }; 36c66ec88fSEmmanuel Vadot }; 37c66ec88fSEmmanuel Vadot }; 38c66ec88fSEmmanuel Vadot 39c66ec88fSEmmanuel Vadot reg_vcc1v8: vcc1v8 { 40c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 41c66ec88fSEmmanuel Vadot regulator-name = "vcc1v8"; 42c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 43c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 44c66ec88fSEmmanuel Vadot }; 45c66ec88fSEmmanuel Vadot}; 46c66ec88fSEmmanuel Vadot 47c66ec88fSEmmanuel Vadot&ac_power_supply { 48c66ec88fSEmmanuel Vadot status = "okay"; 49c66ec88fSEmmanuel Vadot}; 50c66ec88fSEmmanuel Vadot 51c66ec88fSEmmanuel Vadot&battery_power_supply { 52c66ec88fSEmmanuel Vadot status = "okay"; 53c66ec88fSEmmanuel Vadot}; 54c66ec88fSEmmanuel Vadot 55c66ec88fSEmmanuel Vadot&codec { 56c66ec88fSEmmanuel Vadot status = "okay"; 57c66ec88fSEmmanuel Vadot}; 58c66ec88fSEmmanuel Vadot 59c66ec88fSEmmanuel Vadot&codec_analog { 60c66ec88fSEmmanuel Vadot status = "okay"; 61c66ec88fSEmmanuel Vadot}; 62c66ec88fSEmmanuel Vadot 63c66ec88fSEmmanuel Vadot&dai { 64c66ec88fSEmmanuel Vadot status = "okay"; 65c66ec88fSEmmanuel Vadot}; 66c66ec88fSEmmanuel Vadot 67c66ec88fSEmmanuel Vadot&de { 68c66ec88fSEmmanuel Vadot status = "okay"; 69c66ec88fSEmmanuel Vadot}; 70c66ec88fSEmmanuel Vadot 71c66ec88fSEmmanuel Vadot&ehci0 { 72c66ec88fSEmmanuel Vadot status = "okay"; 73c66ec88fSEmmanuel Vadot}; 74c66ec88fSEmmanuel Vadot 75c66ec88fSEmmanuel Vadot&ehci1 { 76c66ec88fSEmmanuel Vadot status = "okay"; 77c66ec88fSEmmanuel Vadot}; 78c66ec88fSEmmanuel Vadot 79c66ec88fSEmmanuel Vadot&emac { 80c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 81c66ec88fSEmmanuel Vadot pinctrl-0 = <&rgmii_pins>; 825956d97fSEmmanuel Vadot phy-mode = "rgmii-txid"; 83c66ec88fSEmmanuel Vadot phy-handle = <&ext_rgmii_phy>; 84c66ec88fSEmmanuel Vadot phy-supply = <®_dc1sw>; 85c66ec88fSEmmanuel Vadot status = "okay"; 86c66ec88fSEmmanuel Vadot}; 87c66ec88fSEmmanuel Vadot 88c66ec88fSEmmanuel Vadot&hdmi { 89c66ec88fSEmmanuel Vadot hvcc-supply = <®_dldo1>; 90c66ec88fSEmmanuel Vadot status = "okay"; 91c66ec88fSEmmanuel Vadot}; 92c66ec88fSEmmanuel Vadot 93c66ec88fSEmmanuel Vadot&hdmi_out { 94c66ec88fSEmmanuel Vadot hdmi_out_con: endpoint { 95c66ec88fSEmmanuel Vadot remote-endpoint = <&hdmi_con_in>; 96c66ec88fSEmmanuel Vadot }; 97c66ec88fSEmmanuel Vadot}; 98c66ec88fSEmmanuel Vadot 99c66ec88fSEmmanuel Vadot&mdio { 100c66ec88fSEmmanuel Vadot ext_rgmii_phy: ethernet-phy@1 { 101c66ec88fSEmmanuel Vadot compatible = "ethernet-phy-ieee802.3-c22"; 102c66ec88fSEmmanuel Vadot reg = <1>; 103c66ec88fSEmmanuel Vadot }; 104c66ec88fSEmmanuel Vadot}; 105c66ec88fSEmmanuel Vadot 106c66ec88fSEmmanuel Vadot&mmc2 { 107c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 108c66ec88fSEmmanuel Vadot pinctrl-0 = <&mmc2_pins>; 109c66ec88fSEmmanuel Vadot vmmc-supply = <®_dcdc1>; 110c66ec88fSEmmanuel Vadot vqmmc-supply = <®_vcc1v8>; 111c66ec88fSEmmanuel Vadot bus-width = <8>; 112c66ec88fSEmmanuel Vadot non-removable; 113c66ec88fSEmmanuel Vadot cap-mmc-hw-reset; 1145def4c47SEmmanuel Vadot mmc-hs200-1_8v; 115c66ec88fSEmmanuel Vadot status = "okay"; 116c66ec88fSEmmanuel Vadot}; 117c66ec88fSEmmanuel Vadot 118c66ec88fSEmmanuel Vadot&ohci0 { 119c66ec88fSEmmanuel Vadot status = "okay"; 120c66ec88fSEmmanuel Vadot}; 121c66ec88fSEmmanuel Vadot 122c66ec88fSEmmanuel Vadot&ohci1 { 123c66ec88fSEmmanuel Vadot status = "okay"; 124c66ec88fSEmmanuel Vadot}; 125c66ec88fSEmmanuel Vadot 126c66ec88fSEmmanuel Vadot®_dc1sw { 127c66ec88fSEmmanuel Vadot /* 128c66ec88fSEmmanuel Vadot * Ethernet PHY needs 30ms to properly power up and some more 129c66ec88fSEmmanuel Vadot * to initialize. 100ms should be plenty of time to finish 130c66ec88fSEmmanuel Vadot * whole process. 131c66ec88fSEmmanuel Vadot */ 132c66ec88fSEmmanuel Vadot regulator-enable-ramp-delay = <100000>; 133c66ec88fSEmmanuel Vadot regulator-name = "vcc-phy"; 134c66ec88fSEmmanuel Vadot}; 135c66ec88fSEmmanuel Vadot 136c66ec88fSEmmanuel Vadot®_dldo1 { 137c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 138c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 139c66ec88fSEmmanuel Vadot regulator-name = "vcc-hdmi"; 140c66ec88fSEmmanuel Vadot}; 141c66ec88fSEmmanuel Vadot 142c66ec88fSEmmanuel Vadot®_dldo2 { 143c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 144c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 145c66ec88fSEmmanuel Vadot regulator-name = "vcc-mipi"; 146c66ec88fSEmmanuel Vadot}; 147c66ec88fSEmmanuel Vadot 148c66ec88fSEmmanuel Vadot®_dldo4 { 149c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 150c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 151c66ec88fSEmmanuel Vadot regulator-name = "vcc-wifi"; 152c66ec88fSEmmanuel Vadot}; 153c66ec88fSEmmanuel Vadot 154c66ec88fSEmmanuel Vadot&simplefb_hdmi { 155c66ec88fSEmmanuel Vadot vcc-hdmi-supply = <®_dldo1>; 156c66ec88fSEmmanuel Vadot}; 157c66ec88fSEmmanuel Vadot 158c66ec88fSEmmanuel Vadot&sound { 159c66ec88fSEmmanuel Vadot simple-audio-card,aux-devs = <&codec_analog>; 160c66ec88fSEmmanuel Vadot simple-audio-card,widgets = "Microphone", "Microphone Jack", 161c66ec88fSEmmanuel Vadot "Headphone", "Headphone Jack"; 162c66ec88fSEmmanuel Vadot simple-audio-card,routing = 1636be33864SEmmanuel Vadot "Left DAC", "DACL", 1646be33864SEmmanuel Vadot "Right DAC", "DACR", 165c66ec88fSEmmanuel Vadot "Headphone Jack", "HP", 1666be33864SEmmanuel Vadot "ADCL", "Left ADC", 1676be33864SEmmanuel Vadot "ADCR", "Right ADC", 168c66ec88fSEmmanuel Vadot "MIC2", "Microphone Jack"; 169c66ec88fSEmmanuel Vadot status = "okay"; 170c66ec88fSEmmanuel Vadot}; 171c66ec88fSEmmanuel Vadot 172c66ec88fSEmmanuel Vadot&uart0 { 173c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 174c66ec88fSEmmanuel Vadot pinctrl-0 = <&uart0_pb_pins>; 175c66ec88fSEmmanuel Vadot status = "okay"; 176c66ec88fSEmmanuel Vadot}; 177c66ec88fSEmmanuel Vadot 178c66ec88fSEmmanuel Vadot/* On Pi-2 connector */ 179c66ec88fSEmmanuel Vadot&uart2 { 180c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 181c66ec88fSEmmanuel Vadot pinctrl-0 = <&uart2_pins>; 182c66ec88fSEmmanuel Vadot status = "disabled"; 183c66ec88fSEmmanuel Vadot}; 184c66ec88fSEmmanuel Vadot 185c66ec88fSEmmanuel Vadot/* On Euler connector */ 186c66ec88fSEmmanuel Vadot&uart3 { 187c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 188c66ec88fSEmmanuel Vadot pinctrl-0 = <&uart3_pins>; 189c66ec88fSEmmanuel Vadot status = "disabled"; 190c66ec88fSEmmanuel Vadot}; 191c66ec88fSEmmanuel Vadot 192c66ec88fSEmmanuel Vadot/* On Euler connector, RTS/CTS optional */ 193c66ec88fSEmmanuel Vadot&uart4 { 194c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 195c66ec88fSEmmanuel Vadot pinctrl-0 = <&uart4_pins>; 196c66ec88fSEmmanuel Vadot status = "disabled"; 197c66ec88fSEmmanuel Vadot}; 198c66ec88fSEmmanuel Vadot 199c66ec88fSEmmanuel Vadot&usb_otg { 200c66ec88fSEmmanuel Vadot dr_mode = "host"; 201c66ec88fSEmmanuel Vadot status = "okay"; 202c66ec88fSEmmanuel Vadot}; 203c66ec88fSEmmanuel Vadot 204c66ec88fSEmmanuel Vadot&usbphy { 205c66ec88fSEmmanuel Vadot status = "okay"; 206c66ec88fSEmmanuel Vadot}; 207