GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / boot / dts / aspeed-bmc-opp-romulus.dts
1 // SPDX-License-Identifier: GPL-2.0+
2 /dts-v1/;
3 #include "aspeed-g5.dtsi"
4 #include <dt-bindings/gpio/aspeed-gpio.h>
5
6 / {
7         model = "Romulus BMC";
8         compatible = "ibm,romulus-bmc", "aspeed,ast2500";
9
10         chosen {
11                 stdout-path = &uart5;
12                 bootargs = "console=ttyS4,115200 earlyprintk";
13         };
14
15         memory@80000000 {
16                 reg = <0x80000000 0x20000000>;
17         };
18
19         reserved-memory {
20                 #address-cells = <1>;
21                 #size-cells = <1>;
22                 ranges;
23
24                 vga_memory: framebuffer@9f000000 {
25                         no-map;
26                         reg = <0x9f000000 0x01000000>; /* 16M */
27                 };
28
29                 flash_memory: region@98000000 {
30                         no-map;
31                         reg = <0x98000000 0x04000000>; /* 64M */
32                 };
33         };
34
35         leds {
36                 compatible = "gpio-leds";
37
38                 fault {
39                         gpios = <&gpio ASPEED_GPIO(N, 2) GPIO_ACTIVE_LOW>;
40                 };
41
42                 identify {
43                         gpios = <&gpio ASPEED_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
44                 };
45
46                 power {
47                         gpios = <&gpio ASPEED_GPIO(R, 5) GPIO_ACTIVE_LOW>;
48                 };
49         };
50
51         fsi: gpio-fsi {
52                 compatible = "fsi-master-gpio", "fsi-master";
53                 #address-cells = <2>;
54                 #size-cells = <0>;
55                 no-gpio-delays;
56
57                 clock-gpios = <&gpio ASPEED_GPIO(AA, 0) GPIO_ACTIVE_HIGH>;
58                 data-gpios = <&gpio ASPEED_GPIO(AA, 2) GPIO_ACTIVE_HIGH>;
59                 mux-gpios = <&gpio ASPEED_GPIO(A, 6) GPIO_ACTIVE_HIGH>;
60                 enable-gpios = <&gpio ASPEED_GPIO(D, 0) GPIO_ACTIVE_HIGH>;
61                 trans-gpios = <&gpio ASPEED_GPIO(R, 2) GPIO_ACTIVE_HIGH>;
62         };
63
64         gpio-keys {
65                 compatible = "gpio-keys";
66
67                 checkstop {
68                         label = "checkstop";
69                         gpios = <&gpio ASPEED_GPIO(J, 2) GPIO_ACTIVE_LOW>;
70                         linux,code = <ASPEED_GPIO(J, 2)>;
71                 };
72
73                 id-button {
74                         label = "id-button";
75                         gpios = <&gpio ASPEED_GPIO(Q, 7) GPIO_ACTIVE_LOW>;
76                         linux,code = <ASPEED_GPIO(Q, 7)>;
77                 };
78         };
79 };
80
81 &fmc {
82         status = "okay";
83         flash@0 {
84                 status = "okay";
85                 m25p,fast-read;
86                 label = "bmc";
87 #include "openbmc-flash-layout.dtsi"
88         };
89 };
90
91 &spi1 {
92         status = "okay";
93         pinctrl-names = "default";
94         pinctrl-0 = <&pinctrl_spi1_default>;
95
96         flash@0 {
97                 status = "okay";
98                 m25p,fast-read;
99                 label = "pnor";
100         };
101 };
102
103 &lpc_ctrl {
104         status = "okay";
105         memory-region = <&flash_memory>;
106         flash = <&spi1>;
107 };
108
109 &uart1 {
110         /* Rear RS-232 connector */
111         status = "okay";
112
113         pinctrl-names = "default";
114         pinctrl-0 = <&pinctrl_txd1_default
115                         &pinctrl_rxd1_default
116                         &pinctrl_nrts1_default
117                         &pinctrl_ndtr1_default
118                         &pinctrl_ndsr1_default
119                         &pinctrl_ncts1_default
120                         &pinctrl_ndcd1_default
121                         &pinctrl_nri1_default>;
122 };
123
124 &uart5 {
125         status = "okay";
126 };
127
128 &mac0 {
129         status = "okay";
130
131         use-ncsi;
132
133         pinctrl-names = "default";
134         pinctrl-0 = <&pinctrl_rmii1_default>;
135 };
136
137 &i2c1 {
138         status = "okay";
139 };
140
141 &i2c2 {
142         status = "okay";
143 };
144
145 &i2c3 {
146         status = "okay";
147 };
148
149 &i2c4 {
150         status = "okay";
151 };
152
153 &i2c5 {
154         status = "okay";
155 };
156
157 &i2c6 {
158         /* PCIe slot 1 (x8) */
159         status = "okay";
160 };
161
162 &i2c7 {
163         /* PCIe slot 2 (x16) */
164         status = "okay";
165 };
166
167 &i2c8 {
168         /* PCIe slot 3 (x16) */
169         status = "okay";
170 };
171
172 &i2c9 {
173         /* PCIe slot 4 (x16) */
174         status = "okay";
175 };
176
177 &i2c10 {
178         /* PCIe slot 5 (x8) */
179         status = "okay";
180 };
181
182 &i2c11 {
183         status = "okay";
184
185         rtc@32 {
186                 compatible = "epson,rx8900";
187                 reg = <0x32>;
188         };
189 };
190
191 &i2c12 {
192         status = "okay";
193
194         w83773g@4c {
195                 compatible = "nuvoton,w83773g";
196                 reg = <0x4c>;
197         };
198 };
199
200 &gpio {
201         nic_func_mode0 {
202                 gpio-hog;
203                 gpios = <ASPEED_GPIO(D, 3) GPIO_ACTIVE_HIGH>;
204                 output-low;
205                 line-name = "nic_func_mode0";
206         };
207         nic_func_mode1 {
208                 gpio-hog;
209                 gpios = <ASPEED_GPIO(D, 4) GPIO_ACTIVE_HIGH>;
210                 output-low;
211                 line-name = "nic_func_mode1";
212         };
213         seq_cont {
214                 gpio-hog;
215                 gpios = <ASPEED_GPIO(S, 7) GPIO_ACTIVE_HIGH>;
216                 output-low;
217                 line-name = "seq_cont";
218         };
219 };
220
221 &vuart {
222         status = "okay";
223 };
224
225 &gfx {
226         status = "okay";
227 };
228
229 &pinctrl {
230         aspeed,external-nodes = <&gfx &lhc>;
231 };
232
233 &pwm_tacho {
234         status = "okay";
235         pinctrl-names = "default";
236         pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default>;
237
238         fan@0 {
239                 reg = <0x00>;
240                 aspeed,fan-tach-ch = /bits/ 8 <0x08>;
241         };
242
243         fan@1 {
244                 reg = <0x00>;
245                 aspeed,fan-tach-ch = /bits/ 8 <0x09>;
246         };
247
248         fan@2 {
249                 reg = <0x01>;
250                 aspeed,fan-tach-ch = /bits/ 8 <0x0a>;
251         };
252
253         fan@3 {
254                 reg = <0x01>;
255                 aspeed,fan-tach-ch = /bits/ 8 <0x0b>;
256         };
257
258         fan@4 {
259                 reg = <0x00>;
260                 aspeed,fan-tach-ch = /bits/ 8 <0x0c>;
261         };
262
263         fan@5 {
264                 reg = <0x00>;
265                 aspeed,fan-tach-ch = /bits/ 8 <0x0d>;
266         };
267
268         fan@6 {
269                 reg = <0x01>;
270                 aspeed,fan-tach-ch = /bits/ 8 <0x0e>;
271         };
272 };
273
274 &ibt {
275         status = "okay";
276 };