xref: /freebsd/sys/contrib/device-tree/src/arm64/allwinner/sun50i-a133-liontron-h-a133l.dts (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2025 Arm Ltd.
4 */
5
6/dts-v1/;
7
8#include "sun50i-a100.dtsi"
9#include "sun50i-a100-cpu-opp.dtsi"
10
11#include <dt-bindings/gpio/gpio.h>
12#include <dt-bindings/leds/common.h>
13
14/{
15	model = "Liontron H-A133L";
16	compatible = "liontron,h-a133l", "allwinner,sun50i-a100";
17
18	aliases {
19		serial0 = &uart0;
20	};
21
22	chosen {
23		stdout-path = "serial0:115200n8";
24	};
25
26	leds {
27		compatible = "gpio-leds";
28
29		led {
30			function = LED_FUNCTION_POWER;
31			color = <LED_COLOR_ID_BLUE>;
32			gpios = <&pio 7 16 GPIO_ACTIVE_LOW>; /* PH16 */
33		};
34	};
35
36	reg_vcc5v: vcc5v {
37		/* board wide 5V supply from a 12V->5V regulator */
38		compatible = "regulator-fixed";
39		regulator-name = "vcc-5v";
40		regulator-min-microvolt = <5000000>;
41		regulator-max-microvolt = <5000000>;
42		regulator-always-on;
43	};
44
45	reg_usb1_vbus: regulator-usb1-vbus {
46		compatible = "regulator-fixed";
47		regulator-name = "usb1-vbus";
48		regulator-min-microvolt = <5000000>;
49		regulator-max-microvolt = <5000000>;
50		vin-supply = <&reg_vcc5v>;
51		enable-active-high;
52		gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
53	};
54};
55
56&cpu0 {
57	cpu-supply = <&reg_dcdc2>;
58};
59
60&ehci0 {
61	status = "okay";
62};
63
64&ehci1 {
65	status = "okay";
66};
67
68&emac0 {
69	pinctrl-names = "default";
70	pinctrl-0 = <&rmii0_pins>;
71	phy-handle = <&rmii_phy>;
72	phy-mode = "rmii";
73	status = "okay";
74};
75
76&mdio0 {
77	reset-gpios = <&pio 7 12 GPIO_ACTIVE_LOW>; /* PH12 */
78	reset-delay-us = <2000>;
79	reset-post-delay-us = <2000>;
80
81	rmii_phy: ethernet-phy@1 {
82		compatible = "ethernet-phy-ieee802.3-c22";
83		reg = <1>;
84	};
85};
86
87&mmc0 {
88	vmmc-supply = <&reg_dcdc1>;
89	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
90	bus-width = <4>;
91	status = "okay";
92};
93
94&mmc2 {
95	vmmc-supply = <&reg_dcdc1>;
96	vqmmc-supply = <&reg_eldo1>;
97	cap-mmc-hw-reset;
98	non-removable;
99	bus-width = <8>;
100	mmc-ddr-1_8v;
101	mmc-hs200-1_8v;
102	status = "okay";
103};
104
105&ohci0 {
106	status = "okay";
107};
108
109&ohci1 {
110	status = "okay";
111};
112
113&pio {
114	vcc-pb-supply = <&reg_dcdc1>;
115	vcc-pc-supply = <&reg_eldo1>;
116	vcc-pf-supply = <&reg_dcdc1>;
117	vcc-ph-supply = <&reg_dcdc1>;
118};
119
120&r_i2c0 {
121	status = "okay";
122
123	axp803: pmic@34 {
124		compatible = "x-powers,axp803";
125		reg = <0x34>;
126		interrupt-parent = <&r_intc>;
127		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
128	};
129};
130
131#include "axp803.dtsi"
132
133&ac_power_supply {
134	status = "okay";
135};
136
137&reg_aldo1 {
138	regulator-always-on;
139	regulator-min-microvolt = <1800000>;
140	regulator-max-microvolt = <1800000>;
141	regulator-name = "vcc-codec-avcc";
142};
143
144&reg_aldo2 {
145	regulator-always-on;
146	regulator-min-microvolt = <1800000>;
147	regulator-max-microvolt = <1800000>;
148	regulator-name = "vcc-dram-1";
149};
150
151&reg_aldo3 {
152	regulator-always-on;
153	regulator-min-microvolt = <3300000>;
154	regulator-max-microvolt = <3300000>;
155	regulator-name = "vcc-usb-pl";
156};
157
158&reg_dcdc1 {
159	regulator-always-on;
160	regulator-min-microvolt = <3300000>;
161	regulator-max-microvolt = <3300000>;
162	regulator-name = "vcc-io-usb-pd-emmc";
163};
164
165&reg_dcdc2 {
166	regulator-always-on;
167	regulator-min-microvolt = <810000>;
168	regulator-max-microvolt = <1200000>;
169	regulator-name = "vdd-cpux";
170};
171
172&reg_dcdc3 {
173	regulator-always-on;
174	regulator-min-microvolt = <900000>;
175	regulator-max-microvolt = <900000>;
176	regulator-name = "vdd-usb-cpus";
177};
178
179&reg_dcdc4 {
180	regulator-always-on;
181	regulator-min-microvolt = <950000>;
182	regulator-max-microvolt = <950000>;
183	regulator-name = "vdd-sys";
184};
185
186&reg_dcdc5 {
187	regulator-always-on;
188	regulator-min-microvolt = <1100000>;
189	regulator-max-microvolt = <1100000>;
190	regulator-name = "vcc-dram";
191};
192
193/* DCDC6 unused */
194/* DLDO3 unused */
195/* DLDO4 unused */
196
197&reg_eldo1 {
198	regulator-min-microvolt = <1800000>;
199	regulator-max-microvolt = <1800000>;
200	regulator-name = "vcc-pc-emmc";
201};
202
203/* ELDO2 unused */
204/* ELDO3 unused */
205
206&reg_fldo1 {
207	regulator-always-on;
208	regulator-min-microvolt = <900000>;
209	regulator-max-microvolt = <900000>;
210	regulator-name = "vdd-cpus-usb";
211};
212
213/* reg_drivevbus unused */
214/* dc1sw unused */
215
216&uart0 {
217	pinctrl-names = "default";
218	pinctrl-0 = <&uart0_pb_pins>;
219	status = "okay";
220};
221
222&usb_otg {
223	dr_mode = "host";       /* USB A type receptacle, always powered */
224	status = "okay";
225};
226
227&usbphy {
228	usb1_vbus-supply = <&reg_usb1_vbus>;
229	status = "okay";
230};
231