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