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