1b4b8f2c9SClément Péron// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 296219b00SIcenowy Zheng/* 396219b00SIcenowy Zheng * Copyright (c) 2017 Icenowy Zheng <icenowy@aosc.xyz> 496219b00SIcenowy Zheng * 596219b00SIcenowy Zheng * Based on sun50i-a64-pine64.dts, which is: 696219b00SIcenowy Zheng * Copyright (c) 2016 ARM Ltd. 796219b00SIcenowy Zheng */ 896219b00SIcenowy Zheng 996219b00SIcenowy Zheng/dts-v1/; 1096219b00SIcenowy Zheng 1196219b00SIcenowy Zheng#include "sun50i-a64-sopine.dtsi" 1296219b00SIcenowy Zheng 1396219b00SIcenowy Zheng/ { 1496219b00SIcenowy Zheng model = "SoPine with baseboard"; 1596219b00SIcenowy Zheng compatible = "pine64,sopine-baseboard", "pine64,sopine", 1696219b00SIcenowy Zheng "allwinner,sun50i-a64"; 1796219b00SIcenowy Zheng 1896219b00SIcenowy Zheng aliases { 1994f44288SCorentin Labbe ethernet0 = &emac; 2096219b00SIcenowy Zheng serial0 = &uart0; 2113de0f0aSAlistair Francis serial1 = &uart1; 2213de0f0aSAlistair Francis serial2 = &uart2; 2313de0f0aSAlistair Francis serial3 = &uart3; 2413de0f0aSAlistair Francis serial4 = &uart4; 2596219b00SIcenowy Zheng }; 2696219b00SIcenowy Zheng 2796219b00SIcenowy Zheng chosen { 2896219b00SIcenowy Zheng stdout-path = "serial0:115200n8"; 2996219b00SIcenowy Zheng }; 3096219b00SIcenowy Zheng 31f4e4453aSJagan Teki hdmi-connector { 32f4e4453aSJagan Teki compatible = "hdmi-connector"; 33f4e4453aSJagan Teki type = "a"; 34f4e4453aSJagan Teki 35f4e4453aSJagan Teki port { 36f4e4453aSJagan Teki hdmi_con_in: endpoint { 37f4e4453aSJagan Teki remote-endpoint = <&hdmi_out_con>; 38f4e4453aSJagan Teki }; 39f4e4453aSJagan Teki }; 40f4e4453aSJagan Teki }; 41f4e4453aSJagan Teki 4296219b00SIcenowy Zheng reg_vcc1v8: vcc1v8 { 4396219b00SIcenowy Zheng compatible = "regulator-fixed"; 4496219b00SIcenowy Zheng regulator-name = "vcc1v8"; 4596219b00SIcenowy Zheng regulator-min-microvolt = <1800000>; 4696219b00SIcenowy Zheng regulator-max-microvolt = <1800000>; 4796219b00SIcenowy Zheng }; 4896219b00SIcenowy Zheng}; 4996219b00SIcenowy Zheng 505e99c99aSOskari Lemmela&ac_power_supply { 515e99c99aSOskari Lemmela status = "okay"; 525e99c99aSOskari Lemmela}; 535e99c99aSOskari Lemmela 545e99c99aSOskari Lemmela&battery_power_supply { 555e99c99aSOskari Lemmela status = "okay"; 565e99c99aSOskari Lemmela}; 575e99c99aSOskari Lemmela 58498c21f2SVasily Khoruzhick&codec { 59498c21f2SVasily Khoruzhick status = "okay"; 60498c21f2SVasily Khoruzhick}; 61498c21f2SVasily Khoruzhick 62498c21f2SVasily Khoruzhick&codec_analog { 63498c21f2SVasily Khoruzhick status = "okay"; 64498c21f2SVasily Khoruzhick}; 65498c21f2SVasily Khoruzhick 66498c21f2SVasily Khoruzhick&dai { 67498c21f2SVasily Khoruzhick status = "okay"; 68498c21f2SVasily Khoruzhick}; 69498c21f2SVasily Khoruzhick 70f4e4453aSJagan Teki&de { 71f4e4453aSJagan Teki status = "okay"; 72f4e4453aSJagan Teki}; 73f4e4453aSJagan Teki 7496219b00SIcenowy Zheng&ehci0 { 7596219b00SIcenowy Zheng status = "okay"; 7696219b00SIcenowy Zheng}; 7796219b00SIcenowy Zheng 7896219b00SIcenowy Zheng&ehci1 { 7996219b00SIcenowy Zheng status = "okay"; 8096219b00SIcenowy Zheng}; 8196219b00SIcenowy Zheng 8294f44288SCorentin Labbe&emac { 8394f44288SCorentin Labbe pinctrl-names = "default"; 8494f44288SCorentin Labbe pinctrl-0 = <&rgmii_pins>; 8594f44288SCorentin Labbe phy-mode = "rgmii"; 8694f44288SCorentin Labbe phy-handle = <&ext_rgmii_phy>; 87bdfe4cebSIcenowy Zheng phy-supply = <®_dc1sw>; 8894f44288SCorentin Labbe status = "okay"; 8994f44288SCorentin Labbe}; 9094f44288SCorentin Labbe 91f4e4453aSJagan Teki&hdmi { 92f4e4453aSJagan Teki hvcc-supply = <®_dldo1>; 93f4e4453aSJagan Teki status = "okay"; 94f4e4453aSJagan Teki}; 95f4e4453aSJagan Teki 96f4e4453aSJagan Teki&hdmi_out { 97f4e4453aSJagan Teki hdmi_out_con: endpoint { 98f4e4453aSJagan Teki remote-endpoint = <&hdmi_con_in>; 99f4e4453aSJagan Teki }; 100f4e4453aSJagan Teki}; 101f4e4453aSJagan Teki 10294f44288SCorentin Labbe&mdio { 10394f44288SCorentin Labbe ext_rgmii_phy: ethernet-phy@1 { 10494f44288SCorentin Labbe compatible = "ethernet-phy-ieee802.3-c22"; 10594f44288SCorentin Labbe reg = <1>; 10694f44288SCorentin Labbe }; 10794f44288SCorentin Labbe}; 10894f44288SCorentin Labbe 10996219b00SIcenowy Zheng&mmc2 { 11096219b00SIcenowy Zheng pinctrl-names = "default"; 11196219b00SIcenowy Zheng pinctrl-0 = <&mmc2_pins>; 1127d556bfcSJagan Teki vmmc-supply = <®_dcdc1>; 11396219b00SIcenowy Zheng vqmmc-supply = <®_vcc1v8>; 11496219b00SIcenowy Zheng bus-width = <8>; 11596219b00SIcenowy Zheng non-removable; 11696219b00SIcenowy Zheng cap-mmc-hw-reset; 11796219b00SIcenowy Zheng status = "okay"; 11896219b00SIcenowy Zheng}; 11996219b00SIcenowy Zheng 12096219b00SIcenowy Zheng&ohci0 { 12196219b00SIcenowy Zheng status = "okay"; 12296219b00SIcenowy Zheng}; 12396219b00SIcenowy Zheng 12496219b00SIcenowy Zheng&ohci1 { 12596219b00SIcenowy Zheng status = "okay"; 12696219b00SIcenowy Zheng}; 12796219b00SIcenowy Zheng 12878c3cbc8SIcenowy Zheng®_dc1sw { 129ccdf3aaaSJernej Skrabec /* 130ccdf3aaaSJernej Skrabec * Ethernet PHY needs 30ms to properly power up and some more 131ccdf3aaaSJernej Skrabec * to initialize. 100ms should be plenty of time to finish 132ccdf3aaaSJernej Skrabec * whole process. 133ccdf3aaaSJernej Skrabec */ 134ccdf3aaaSJernej Skrabec regulator-enable-ramp-delay = <100000>; 13578c3cbc8SIcenowy Zheng regulator-name = "vcc-phy"; 13678c3cbc8SIcenowy Zheng}; 13778c3cbc8SIcenowy Zheng 13878c3cbc8SIcenowy Zheng®_dldo1 { 13978c3cbc8SIcenowy Zheng regulator-min-microvolt = <3300000>; 14078c3cbc8SIcenowy Zheng regulator-max-microvolt = <3300000>; 14178c3cbc8SIcenowy Zheng regulator-name = "vcc-hdmi"; 14278c3cbc8SIcenowy Zheng}; 14378c3cbc8SIcenowy Zheng 14478c3cbc8SIcenowy Zheng®_dldo2 { 14578c3cbc8SIcenowy Zheng regulator-min-microvolt = <3300000>; 14678c3cbc8SIcenowy Zheng regulator-max-microvolt = <3300000>; 14778c3cbc8SIcenowy Zheng regulator-name = "vcc-mipi"; 14878c3cbc8SIcenowy Zheng}; 14978c3cbc8SIcenowy Zheng 15078c3cbc8SIcenowy Zheng®_dldo4 { 15178c3cbc8SIcenowy Zheng regulator-min-microvolt = <3300000>; 15278c3cbc8SIcenowy Zheng regulator-max-microvolt = <3300000>; 15378c3cbc8SIcenowy Zheng regulator-name = "vcc-wifi"; 15478c3cbc8SIcenowy Zheng}; 15578c3cbc8SIcenowy Zheng 1565cbef9f9SIcenowy Zheng&simplefb_hdmi { 1575cbef9f9SIcenowy Zheng vcc-hdmi-supply = <®_dldo1>; 1585cbef9f9SIcenowy Zheng}; 1595cbef9f9SIcenowy Zheng 160498c21f2SVasily Khoruzhick&sound { 161498c21f2SVasily Khoruzhick simple-audio-card,aux-devs = <&codec_analog>; 162498c21f2SVasily Khoruzhick simple-audio-card,widgets = "Microphone", "Microphone Jack", 163498c21f2SVasily Khoruzhick "Headphone", "Headphone Jack"; 164498c21f2SVasily Khoruzhick simple-audio-card,routing = 165498c21f2SVasily Khoruzhick "Left DAC", "AIF1 Slot 0 Left", 166498c21f2SVasily Khoruzhick "Right DAC", "AIF1 Slot 0 Right", 167498c21f2SVasily Khoruzhick "Headphone Jack", "HP", 168498c21f2SVasily Khoruzhick "AIF1 Slot 0 Left ADC", "Left ADC", 169498c21f2SVasily Khoruzhick "AIF1 Slot 0 Right ADC", "Right ADC", 170498c21f2SVasily Khoruzhick "MIC2", "Microphone Jack"; 171498c21f2SVasily Khoruzhick status = "okay"; 172498c21f2SVasily Khoruzhick}; 173498c21f2SVasily Khoruzhick 17496219b00SIcenowy Zheng&uart0 { 17596219b00SIcenowy Zheng pinctrl-names = "default"; 176d91ebb95SChen-Yu Tsai pinctrl-0 = <&uart0_pb_pins>; 17796219b00SIcenowy Zheng status = "okay"; 17896219b00SIcenowy Zheng}; 17996219b00SIcenowy Zheng 18013de0f0aSAlistair Francis/* On Pi-2 connector */ 18113de0f0aSAlistair Francis&uart2 { 18213de0f0aSAlistair Francis pinctrl-names = "default"; 18313de0f0aSAlistair Francis pinctrl-0 = <&uart2_pins>; 18413de0f0aSAlistair Francis status = "disabled"; 18513de0f0aSAlistair Francis}; 18613de0f0aSAlistair Francis 18713de0f0aSAlistair Francis/* On Euler connector */ 18813de0f0aSAlistair Francis&uart3 { 18913de0f0aSAlistair Francis pinctrl-names = "default"; 19013de0f0aSAlistair Francis pinctrl-0 = <&uart3_pins>; 19113de0f0aSAlistair Francis status = "disabled"; 19213de0f0aSAlistair Francis}; 19313de0f0aSAlistair Francis 19413de0f0aSAlistair Francis/* On Euler connector, RTS/CTS optional */ 19513de0f0aSAlistair Francis&uart4 { 19613de0f0aSAlistair Francis pinctrl-names = "default"; 19713de0f0aSAlistair Francis pinctrl-0 = <&uart4_pins>; 19813de0f0aSAlistair Francis status = "disabled"; 19913de0f0aSAlistair Francis}; 20013de0f0aSAlistair Francis 20196219b00SIcenowy Zheng&usb_otg { 20296219b00SIcenowy Zheng dr_mode = "host"; 20396219b00SIcenowy Zheng status = "okay"; 20496219b00SIcenowy Zheng}; 20596219b00SIcenowy Zheng 20696219b00SIcenowy Zheng&usbphy { 20796219b00SIcenowy Zheng status = "okay"; 20896219b00SIcenowy Zheng}; 209