uboot-mediatek: build fully-featured U-Boot for MT7988 RFB
[openwrt/staging/nbd.git] / target / linux / mediatek / files-5.15 / arch / arm64 / boot / dts / mediatek / mt7988a-rfb.dtsi
1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
2 /*
3 * Copyright (C) 2022 MediaTek Inc.
4 * Author: Sam.Shih <sam.shih@mediatek.com>
5 */
6
7 /dts-v1/;
8 #include "mt7988a.dtsi"
9 #include <dt-bindings/regulator/richtek,rt5190a-regulator.h>
10
11 &cpu0 {
12 proc-supply = <&rt5190_buck3>;
13 };
14
15 &cpu1 {
16 proc-supply = <&rt5190_buck3>;
17 };
18
19 &cpu2 {
20 proc-supply = <&rt5190_buck3>;
21 };
22
23 &cpu3 {
24 proc-supply = <&rt5190_buck3>;
25 };
26
27 &cci {
28 proc-supply = <&rt5190_buck3>;
29 };
30
31 &eth {
32 status = "okay";
33 };
34
35 &i2c0 {
36 pinctrl-names = "default";
37 pinctrl-0 = <&i2c0_pins>;
38 status = "okay";
39
40 rt5190a_64: rt5190a@64 {
41 compatible = "richtek,rt5190a";
42 reg = <0x64>;
43 /*interrupts-extended = <&gpio26 0 IRQ_TYPE_LEVEL_LOW>;*/
44 vin2-supply = <&rt5190_buck1>;
45 vin3-supply = <&rt5190_buck1>;
46 vin4-supply = <&rt5190_buck1>;
47
48 regulators {
49 rt5190_buck1: buck1 {
50 regulator-name = "rt5190a-buck1";
51 regulator-min-microvolt = <5090000>;
52 regulator-max-microvolt = <5090000>;
53 regulator-allowed-modes =
54 <RT5190A_OPMODE_AUTO RT5190A_OPMODE_FPWM>;
55 regulator-boot-on;
56 regulator-always-on;
57 };
58 buck2 {
59 regulator-name = "vcore";
60 regulator-min-microvolt = <600000>;
61 regulator-max-microvolt = <1400000>;
62 regulator-boot-on;
63 regulator-always-on;
64 };
65 rt5190_buck3: buck3 {
66 regulator-name = "vproc";
67 regulator-min-microvolt = <600000>;
68 regulator-max-microvolt = <1400000>;
69 regulator-boot-on;
70 };
71 buck4 {
72 regulator-name = "rt5190a-buck4";
73 regulator-min-microvolt = <850000>;
74 regulator-max-microvolt = <850000>;
75 regulator-allowed-modes =
76 <RT5190A_OPMODE_AUTO RT5190A_OPMODE_FPWM>;
77 regulator-boot-on;
78 regulator-always-on;
79 };
80 ldo {
81 regulator-name = "rt5190a-ldo";
82 regulator-min-microvolt = <1200000>;
83 regulator-max-microvolt = <1200000>;
84 regulator-boot-on;
85 regulator-always-on;
86 };
87 };
88 };
89 };
90
91 &pcie0 {
92 pinctrl-names = "default";
93 pinctrl-0 = <&pcie0_pins>;
94 status = "okay";
95 };
96
97 &pcie1 {
98 pinctrl-names = "default";
99 pinctrl-0 = <&pcie1_pins>;
100 status = "okay";
101 };
102
103 &pcie2 {
104 pinctrl-names = "default";
105 pinctrl-0 = <&pcie2_pins>;
106 status = "disabled";
107 };
108
109 &pcie3 {
110 pinctrl-names = "default";
111 pinctrl-0 = <&pcie3_pins>;
112 status = "okay";
113 };
114
115 &ssusb0 {
116 status = "okay";
117 };
118
119 &ssusb1 {
120 status = "okay";
121 };
122
123 &tphy {
124 status = "okay";
125 };
126
127 &pio {
128 pcie0_pins: pcie0-pins {
129 mux {
130 function = "pcie";
131 groups = "pcie_2l_0_pereset", "pcie_clk_req_n0_0",
132 "pcie_wake_n0_0";
133 };
134 };
135
136 pcie1_pins: pcie1-pins {
137 mux {
138 function = "pcie";
139 groups = "pcie_2l_1_pereset", "pcie_clk_req_n1",
140 "pcie_wake_n1_0";
141 };
142 };
143
144 pcie2_pins: pcie2-pins {
145 mux {
146 function = "pcie";
147 groups = "pcie_1l_0_pereset", "pcie_clk_req_n2_0",
148 "pcie_wake_n2_0";
149 };
150 };
151
152 pcie3_pins: pcie3-pins {
153 mux {
154 function = "pcie";
155 groups = "pcie_1l_1_pereset", "pcie_clk_req_n3",
156 "pcie_wake_n3_0";
157 };
158 };
159 };
160
161 &spi0 {
162 status = "disabled";
163 };
164
165 &uart0 {
166 status = "okay";
167 };
168
169 &watchdog {
170 status = "okay";
171 };
172
173 &xphy {
174 status = "okay";
175 };