1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (C) 2023 Arm Ltd. 4 */ 5 6/dts-v1/; 7 8#include "sun50i-h616.dtsi" 9#include "sun50i-h616-cpu-opp.dtsi" 10 11#include <dt-bindings/gpio/gpio.h> 12#include <dt-bindings/interrupt-controller/arm-gic.h> 13 14/ { 15 model = "Transpeed 8K618-T"; 16 compatible = "transpeed,8k618-t", "allwinner,sun50i-h618"; 17 18 aliases { 19 ethernet1 = &sdio_wifi; 20 serial0 = &uart0; 21 }; 22 23 chosen { 24 stdout-path = "serial0:115200n8"; 25 }; 26 27 reg_vcc5v: vcc5v { 28 /* board wide 5V supply directly from the DC input */ 29 compatible = "regulator-fixed"; 30 regulator-name = "vcc-5v"; 31 regulator-min-microvolt = <5000000>; 32 regulator-max-microvolt = <5000000>; 33 regulator-always-on; 34 }; 35 36 reg_vcc3v3: vcc3v3 { 37 /* discrete 3.3V regulator */ 38 compatible = "regulator-fixed"; 39 regulator-name = "vcc-3v3"; 40 regulator-min-microvolt = <3300000>; 41 regulator-max-microvolt = <3300000>; 42 regulator-always-on; 43 }; 44 45 wifi_pwrseq: pwrseq { 46 compatible = "mmc-pwrseq-simple"; 47 clocks = <&rtc CLK_OSC32K_FANOUT>; 48 clock-names = "ext_clock"; 49 pinctrl-0 = <&x32clk_fanout_pin>; 50 pinctrl-names = "default"; 51 reset-gpios = <&pio 6 18 GPIO_ACTIVE_LOW>; /* PG18 */ 52 }; 53}; 54 55&codec { 56 allwinner,audio-routing = "Line Out", "LINEOUT"; 57 status = "okay"; 58}; 59 60&cpu0 { 61 cpu-supply = <®_dcdc2>; 62}; 63 64&ehci0 { 65 status = "okay"; 66}; 67 68&ehci1 { 69 status = "okay"; 70}; 71 72&ir { 73 status = "okay"; 74}; 75 76&mmc0 { 77 vmmc-supply = <®_dldo1>; 78 cd-gpios = <&pio 8 16 GPIO_ACTIVE_LOW>; /* PI16 */ 79 disable-wp; 80 bus-width = <4>; 81 status = "okay"; 82}; 83 84&mmc1 { 85 vmmc-supply = <®_dldo1>; 86 vqmmc-supply = <®_aldo1>; 87 mmc-pwrseq = <&wifi_pwrseq>; 88 bus-width = <4>; 89 non-removable; 90 status = "okay"; 91 92 sdio_wifi: wifi@1 { 93 reg = <1>; 94 }; 95}; 96 97&mmc2 { 98 vmmc-supply = <®_dldo1>; 99 vqmmc-supply = <®_aldo1>; 100 bus-width = <8>; 101 non-removable; 102 cap-mmc-hw-reset; 103 mmc-ddr-1_8v; 104 mmc-hs200-1_8v; 105 status = "okay"; 106}; 107 108&ohci0 { 109 status = "okay"; 110}; 111 112&ohci1 { 113 status = "okay"; 114}; 115 116&r_i2c { 117 status = "okay"; 118 119 axp313: pmic@36 { 120 compatible = "x-powers,axp313a"; 121 reg = <0x36>; 122 #interrupt-cells = <1>; 123 interrupt-controller; 124 125 vin1-supply = <®_vcc5v>; 126 vin2-supply = <®_vcc5v>; 127 vin3-supply = <®_vcc5v>; 128 129 regulators { 130 reg_aldo1: aldo1 { 131 regulator-always-on; 132 regulator-min-microvolt = <1800000>; 133 regulator-max-microvolt = <1800000>; 134 regulator-name = "vcc-1v8-pll"; 135 }; 136 137 reg_dldo1: dldo1 { 138 regulator-always-on; 139 regulator-min-microvolt = <3300000>; 140 regulator-max-microvolt = <3300000>; 141 regulator-name = "vcc-3v3-io-mmc"; 142 }; 143 144 reg_dcdc1: dcdc1 { 145 regulator-always-on; 146 regulator-min-microvolt = <810000>; 147 regulator-max-microvolt = <990000>; 148 regulator-name = "vdd-gpu-sys"; 149 }; 150 151 reg_dcdc2: dcdc2 { 152 regulator-always-on; 153 regulator-min-microvolt = <810000>; 154 regulator-max-microvolt = <1100000>; 155 regulator-name = "vdd-cpu"; 156 }; 157 158 reg_dcdc3: dcdc3 { 159 regulator-always-on; 160 regulator-min-microvolt = <1360000>; 161 regulator-max-microvolt = <1360000>; 162 regulator-name = "vdd-dram"; 163 }; 164 }; 165 }; 166}; 167 168&pio { 169 vcc-pc-supply = <®_aldo1>; 170 vcc-pg-supply = <®_dldo1>; 171 vcc-ph-supply = <®_dldo1>; 172 vcc-pi-supply = <®_dldo1>; 173}; 174 175&uart0 { 176 pinctrl-names = "default"; 177 pinctrl-0 = <&uart0_ph_pins>; 178 status = "okay"; 179}; 180 181&uart1 { 182 pinctrl-names = "default"; 183 pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; 184 uart-has-rtscts; 185 status = "okay"; 186}; 187 188&usbotg { 189 dr_mode = "host"; /* USB A type receptable */ 190 status = "okay"; 191}; 192 193&usbphy { 194 status = "okay"; 195}; 196