xref: /freebsd/sys/contrib/device-tree/src/riscv/spacemit/k3-pico-itx.dts (revision 69ed3df4f588860308677cda76cbcce1f19a54c9)
1// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2/*
3 * Copyright (c) 2026 SpacemiT (Hangzhou) Technology Co. Ltd
4 * Copyright (c) 2026 Guodong Xu <guodong@riscstar.com>
5 */
6#include <dt-bindings/gpio/gpio.h>
7
8#include "k3.dtsi"
9#include "k3-pinctrl.dtsi"
10
11/ {
12	model = "SpacemiT K3 Pico-ITX";
13	compatible = "spacemit,k3-pico-itx", "spacemit,k3";
14
15	aliases {
16		ethernet0 = &eth0;
17		serial0 = &uart0;
18	};
19
20	chosen {
21		stdout-path = "serial0";
22	};
23
24	memory@100000000 {
25		device_type = "memory";
26		reg = <0x1 0x00000000 0x4 0x00000000>;
27	};
28
29	reg_aux_vcc5v: regulator-aux-vcc5v {
30		compatible = "regulator-fixed";
31		regulator-name = "AUX_VCC5V";
32		regulator-min-microvolt = <5000000>;
33		regulator-max-microvolt = <5000000>;
34		regulator-always-on;
35	};
36};
37
38&i2c8 {
39	pinctrl-names = "default";
40	pinctrl-0 = <&i2c8_cfg>;
41	status = "okay";
42
43	p1@41 {
44		compatible = "spacemit,p1";
45		reg = <0x41>;
46		interrupts = <64 IRQ_TYPE_LEVEL_HIGH>;
47		vin1-supply = <&reg_aux_vcc5v>;
48		vin2-supply = <&reg_aux_vcc5v>;
49		vin3-supply = <&reg_aux_vcc5v>;
50		vin4-supply = <&reg_aux_vcc5v>;
51		vin5-supply = <&reg_aux_vcc5v>;
52		vin6-supply = <&reg_aux_vcc5v>;
53		aldoin-supply = <&reg_aux_vcc5v>;
54		dldoin1-supply = <&buck4>;
55		dldoin2-supply = <&buck4>;
56
57		regulators {
58			buck1: buck1 {
59				regulator-min-microvolt = <1050000>;
60				regulator-max-microvolt = <1050000>;
61				regulator-ramp-delay = <5000>;
62				regulator-always-on;
63			};
64
65			buck2: buck2 {
66				regulator-min-microvolt = <1050000>;
67				regulator-max-microvolt = <1050000>;
68				regulator-ramp-delay = <5000>;
69				regulator-always-on;
70			};
71
72			buck3: buck3 {
73				regulator-min-microvolt = <800000>;
74				regulator-max-microvolt = <800000>;
75				regulator-ramp-delay = <5000>;
76				regulator-always-on;
77			};
78
79			buck4: buck4 {
80				regulator-min-microvolt = <2100000>;
81				regulator-max-microvolt = <2100000>;
82				regulator-ramp-delay = <5000>;
83				regulator-always-on;
84			};
85
86			buck5: buck5 {
87				regulator-min-microvolt = <1800000>;
88				regulator-max-microvolt = <1800000>;
89				regulator-ramp-delay = <5000>;
90				regulator-always-on;
91			};
92
93			buck6: buck6 {
94				regulator-min-microvolt = <500000>;
95				regulator-max-microvolt = <500000>;
96				regulator-ramp-delay = <5000>;
97				regulator-always-on;
98			};
99
100			aldo1: aldo1 {
101				regulator-min-microvolt = <1800000>;
102				regulator-max-microvolt = <3300000>;
103				regulator-always-on;
104				regulator-boot-on;
105			};
106
107			aldo2: aldo2 {
108				regulator-min-microvolt = <1800000>;
109				regulator-max-microvolt = <1800000>;
110				regulator-always-on;
111				regulator-boot-on;
112			};
113
114			aldo3: aldo3 {
115				regulator-min-microvolt = <500000>;
116				regulator-max-microvolt = <3400000>;
117			};
118
119			aldo4: aldo4 {
120				regulator-min-microvolt = <3300000>;
121				regulator-max-microvolt = <3300000>;
122				regulator-always-on;
123				regulator-boot-on;
124			};
125
126			dldo1: dldo1 {
127				regulator-min-microvolt = <1200000>;
128				regulator-max-microvolt = <1200000>;
129				regulator-always-on;
130				regulator-boot-on;
131			};
132
133			dldo2: dldo2 {
134				regulator-min-microvolt = <900000>;
135				regulator-max-microvolt = <900000>;
136				regulator-always-on;
137				regulator-boot-on;
138			};
139
140			dldo3: dldo3 {
141				regulator-min-microvolt = <800000>;
142				regulator-max-microvolt = <800000>;
143				regulator-always-on;
144				regulator-boot-on;
145			};
146
147			dldo4: dldo4 {
148				regulator-min-microvolt = <1800000>;
149				regulator-max-microvolt = <1800000>;
150				regulator-boot-on;
151			};
152
153			dldo5: dldo5 {
154				regulator-min-microvolt = <1800000>;
155				regulator-max-microvolt = <1800000>;
156				regulator-always-on;
157				regulator-boot-on;
158			};
159
160			dldo6: dldo6 {
161				regulator-min-microvolt = <1800000>;
162				regulator-max-microvolt = <1800000>;
163				regulator-always-on;
164				regulator-boot-on;
165			};
166
167			dldo7: dldo7 {
168				regulator-min-microvolt = <1800000>;
169				regulator-max-microvolt = <1800000>;
170				regulator-always-on;
171				regulator-boot-on;
172			};
173		};
174	};
175};
176
177&eth0 {
178	pinctrl-names = "default";
179	pinctrl-0 = <&gmac0_rgmii_0_cfg>, <&gmac0_phy_0_cfg>;
180	phy-mode = "rgmii-id";
181	phy-handle = <&phy0>;
182	status = "okay";
183
184	mdio {
185		phy0: phy@1 {
186			compatible = "ethernet-phy-ieee802.3-c22";
187			reg = <1>;
188			reset-gpios = <&gpio 0 15 GPIO_ACTIVE_LOW>;
189			reset-assert-us = <10000>;
190			reset-deassert-us = <10000>;
191		};
192	};
193};
194
195&uart0 {
196	pinctrl-names = "default";
197	pinctrl-0 = <&uart0_0_cfg>;
198	status = "okay";
199};
200