blob: 26d25b5b59e0f89360799404d9998ca612887aa7 [file] [log] [blame]
Andre Przywara8780ada2023-10-19 15:51:39 +01001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
Andre Przywara5eb4bbe2022-09-11 00:04:41 +01002/*
3 * Copyright (C) 2021 Arm Ltd.
4 */
5
6/dts-v1/;
7
8#include "sun50i-h616.dtsi"
Andre Przywara3b798212024-04-19 17:59:52 +01009#include "sun50i-h616-cpu-opp.dtsi"
Andre Przywara5eb4bbe2022-09-11 00:04:41 +010010
11#include <dt-bindings/gpio/gpio.h>
12#include <dt-bindings/interrupt-controller/arm-gic.h>
13
14/ {
15 model = "X96 Mate";
16 compatible = "hechuang,x96-mate", "allwinner,sun50i-h616";
17
18 aliases {
19 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
Andre Przywara3b798212024-04-19 17:59:52 +010036&cpu0 {
37 cpu-supply = <&reg_dcdca>;
38};
39
Andre Przywaraed2724b2023-01-12 11:22:20 +000040&ehci0 {
41 status = "okay";
42};
43
44&ehci2 {
45 status = "okay";
46};
47
Andre Przywara5eb4bbe2022-09-11 00:04:41 +010048&ir {
49 status = "okay";
50};
51
52&mmc0 {
53 vmmc-supply = <&reg_dcdce>;
54 cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
55 bus-width = <4>;
56 status = "okay";
57};
58
59&mmc2 {
60 vmmc-supply = <&reg_dcdce>;
61 vqmmc-supply = <&reg_bldo1>;
62 bus-width = <8>;
63 non-removable;
64 cap-mmc-hw-reset;
65 mmc-ddr-1_8v;
66 mmc-hs200-1_8v;
67 status = "okay";
68};
69
Andre Przywaraed2724b2023-01-12 11:22:20 +000070&ohci0 {
71 status = "okay";
72};
73
74&ohci2 {
75 status = "okay";
76};
77
Andre Przywara5eb4bbe2022-09-11 00:04:41 +010078&r_rsb {
79 status = "okay";
80
81 axp305: pmic@745 {
82 compatible = "x-powers,axp305", "x-powers,axp805",
83 "x-powers,axp806";
84 interrupt-controller;
85 #interrupt-cells = <1>;
86 reg = <0x745>;
87
88 x-powers,self-working-mode;
89 vina-supply = <&reg_vcc5v>;
90 vinb-supply = <&reg_vcc5v>;
91 vinc-supply = <&reg_vcc5v>;
92 vind-supply = <&reg_vcc5v>;
93 vine-supply = <&reg_vcc5v>;
94 aldoin-supply = <&reg_vcc5v>;
95 bldoin-supply = <&reg_vcc5v>;
96 cldoin-supply = <&reg_vcc5v>;
97
98 regulators {
99 reg_aldo1: aldo1 {
100 regulator-always-on;
101 regulator-min-microvolt = <3300000>;
102 regulator-max-microvolt = <3300000>;
103 regulator-name = "vcc-sys";
104 };
105
106 /* Enabled by the Android BSP */
107 reg_aldo2: aldo2 {
108 regulator-min-microvolt = <3300000>;
109 regulator-max-microvolt = <3300000>;
110 regulator-name = "vcc3v3-ext";
111 status = "disabled";
112 };
113
114 /* Enabled by the Android BSP */
115 reg_aldo3: aldo3 {
116 regulator-min-microvolt = <3300000>;
117 regulator-max-microvolt = <3300000>;
118 regulator-name = "vcc3v3-ext2";
119 status = "disabled";
120 };
121
122 reg_bldo1: bldo1 {
123 regulator-always-on;
124 regulator-min-microvolt = <1800000>;
125 regulator-max-microvolt = <1800000>;
126 regulator-name = "vcc1v8";
127 };
128
129 /* Enabled by the Android BSP */
130 reg_bldo2: bldo2 {
131 regulator-min-microvolt = <1800000>;
132 regulator-max-microvolt = <1800000>;
133 regulator-name = "vcc1v8-2";
134 status = "disabled";
135 };
136
137 bldo3 {
138 /* unused */
139 };
140
141 bldo4 {
142 /* unused */
143 };
144
145 cldo1 {
146 regulator-min-microvolt = <2500000>;
147 regulator-max-microvolt = <2500000>;
148 regulator-name = "vcc2v5";
149 };
150
151 cldo2 {
152 /* unused */
153 };
154
155 cldo3 {
156 /* unused */
157 };
158
159 reg_dcdca: dcdca {
160 regulator-always-on;
161 regulator-min-microvolt = <810000>;
162 regulator-max-microvolt = <1100000>;
163 regulator-name = "vdd-cpu";
164 };
165
166 reg_dcdcc: dcdcc {
167 regulator-always-on;
168 regulator-min-microvolt = <810000>;
169 regulator-max-microvolt = <990000>;
170 regulator-name = "vdd-gpu-sys";
171 };
172
173 reg_dcdcd: dcdcd {
174 regulator-always-on;
175 regulator-min-microvolt = <1360000>;
176 regulator-max-microvolt = <1360000>;
177 regulator-name = "vdd-dram";
178 };
179
180 reg_dcdce: dcdce {
181 regulator-always-on;
182 regulator-min-microvolt = <3300000>;
183 regulator-max-microvolt = <3300000>;
184 regulator-name = "vcc-eth-mmc";
185 };
186
187 sw {
188 /* unused */
189 };
190 };
191 };
192};
193
194&uart0 {
195 pinctrl-names = "default";
196 pinctrl-0 = <&uart0_ph_pins>;
197 status = "okay";
198};
Andre Przywaraed2724b2023-01-12 11:22:20 +0000199
200&usbotg {
201 dr_mode = "host"; /* USB A type receptable */
202 status = "okay";
203};
204
205&usbphy {
206 status = "okay";
207};