blob: ddbcbc64e2356bc800d7d06d11069ce748d2c3a9 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0+
2/*
3 * Device Tree file for Lenovo Hr630 platform
4 *
5 * Copyright (C) 2019-present Lenovo
6 */
7
8/dts-v1/;
9
10#include "aspeed-g5.dtsi"
11#include <dt-bindings/gpio/aspeed-gpio.h>
12
13/ {
14 model = "HR630 BMC";
15 compatible = "lenovo,hr630-bmc", "aspeed,ast2500";
16
17 aliases {
18 i2c14 = &i2c_rbp;
19 i2c15 = &i2c_fbp1;
20 i2c16 = &i2c_fbp2;
21 i2c17 = &i2c_fbp3;
22 i2c18 = &i2c_riser2;
23 i2c19 = &i2c_pcie4;
24 i2c20 = &i2c_riser1;
25 i2c21 = &i2c_ocp;
26 };
27
28 chosen {
29 stdout-path = &uart5;
30 bootargs = "console=tty0 console=ttyS4,115200 earlycon";
31 };
32
33 memory@80000000 {
34 device_type = "memory";
35 reg = <0x80000000 0x20000000>;
36 };
37
38 reserved-memory {
39 #address-cells = <1>;
40 #size-cells = <1>;
41 ranges;
42
43 flash_memory: region@98000000 {
44 no-map;
45 reg = <0x98000000 0x00100000>; /* 1M */
46 };
47
48 gfx_memory: framebuffer {
49 size = <0x01000000>;
50 alignment = <0x01000000>;
51 compatible = "shared-dma-pool";
52 reusable;
53 };
54 };
55
56 leds {
57 compatible = "gpio-leds";
58
59 heartbeat {
60 gpios = <&gpio ASPEED_GPIO(J, 1) GPIO_ACTIVE_LOW>;
61 };
62
63 fault {
64 gpios = <&gpio ASPEED_GPIO(J, 0) GPIO_ACTIVE_LOW>;
65 };
66 };
67
68 iio-hwmon {
69 compatible = "iio-hwmon";
70 io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
71 <&adc 4>, <&adc 5>, <&adc 6>, <&adc 7>,
72 <&adc 8>, <&adc 9>, <&adc 10>,
73 <&adc 12>, <&adc 13>, <&adc 14>;
74 };
75
76};
77
78&fmc {
79 status = "okay";
80 flash@0 {
81 status = "okay";
82 m25p,fast-read;
83 label = "bmc";
84 spi-max-frequency = <50000000>;
85#include "openbmc-flash-layout.dtsi"
86 };
87};
88
89&lpc_ctrl {
90 status = "okay";
91 memory-region = <&flash_memory>;
92 flash = <&spi1>;
93};
94
95&uart1 {
96 status = "okay";
97 pinctrl-names = "default";
98 pinctrl-0 = <&pinctrl_txd1_default
99 &pinctrl_rxd1_default>;
100};
101
102&uart2 {
103 /* Rear RS-232 connector */
104 status = "okay";
105 pinctrl-names = "default";
106 pinctrl-0 = <&pinctrl_txd2_default
107 &pinctrl_rxd2_default
108 &pinctrl_nrts2_default
109 &pinctrl_ndtr2_default
110 &pinctrl_ndsr2_default
111 &pinctrl_ncts2_default
112 &pinctrl_ndcd2_default
113 &pinctrl_nri2_default>;
114};
115
116&uart3 {
117 status = "okay";
118 pinctrl-names = "default";
119 pinctrl-0 = <&pinctrl_txd3_default
120 &pinctrl_rxd3_default>;
121};
122
123&uart5 {
124 status = "okay";
125};
126
127&ibt {
128 status = "okay";
129};
130
131&mac0 {
132 status = "okay";
133
134 pinctrl-names = "default";
135 pinctrl-0 = <&pinctrl_rmii1_default>;
136 clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>,
137 <&syscon ASPEED_CLK_MAC1RCLK>;
138 clock-names = "MACCLK", "RCLK";
139 use-ncsi;
140};
141
142&mac1 {
143 status = "okay";
144
145 pinctrl-names = "default";
146 pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>;
147};
148
149&adc {
150 status = "okay";
151
152 pinctrl-names = "default";
153 pinctrl-0 = <&pinctrl_adc0_default
154 &pinctrl_adc1_default
155 &pinctrl_adc2_default
156 &pinctrl_adc3_default
157 &pinctrl_adc4_default
158 &pinctrl_adc5_default
159 &pinctrl_adc6_default
160 &pinctrl_adc7_default
161 &pinctrl_adc8_default
162 &pinctrl_adc9_default
163 &pinctrl_adc10_default
164 &pinctrl_adc12_default
165 &pinctrl_adc13_default
166 &pinctrl_adc14_default>;
167};
168
169&i2c0 {
170 status = "okay";
171 /* temp1 inlet */
172 tmp75@4e {
173 compatible = "national,lm75";
174 reg = <0x4e>;
175 };
176};
177
178&i2c1 {
179 status = "okay";
180 /* temp2 outlet */
181 tmp75@4d {
182 compatible = "national,lm75";
183 reg = <0x4d>;
184 };
185};
186
187&i2c2 {
188 status = "okay";
189};
190
191&i2c3 {
192 status = "okay";
193};
194
195&i2c4 {
196 status = "okay";
197};
198
199&i2c5 {
200 status = "okay";
201};
202
203&i2c6 {
204 status = "okay";
205 /* Slot 0,
206 * Slot 1,
207 * Slot 2,
208 * Slot 3
209 */
210
211 i2c-mux@70 {
212 compatible = "nxp,pca9545";
213 reg = <0x70>;
214 #address-cells = <1>;
215 #size-cells = <0>;
216 i2c-mux-idle-disconnect; /* may use mux@70 next. */
217
218 i2c_rbp: i2c@0 {
219 #address-cells = <1>;
220 #size-cells = <0>;
221 reg = <0>;
222 };
223
224 i2c_fbp1: i2c@1 {
225 #address-cells = <1>;
226 #size-cells = <0>;
227 reg = <1>;
228 };
229
230 i2c_fbp2: i2c@2 {
231 #address-cells = <1>;
232 #size-cells = <0>;
233 reg = <2>;
234 };
235
236 i2c_fbp3: i2c@3 {
237 #address-cells = <1>;
238 #size-cells = <0>;
239 reg = <3>;
240 };
241 };
242};
243
244&i2c7 {
245 status = "okay";
246
247 /* Slot 0,
248 * Slot 1,
249 * Slot 2,
250 * Slot 3
251 */
252 i2c-mux@76 {
253 compatible = "nxp,pca9546";
254 reg = <0x76>;
255 #address-cells = <1>;
256 #size-cells = <0>;
257 i2c-mux-idle-disconnect; /* may use mux@76 next. */
258
259 i2c_riser2: i2c@0 {
260 #address-cells = <1>;
261 #size-cells = <0>;
262 reg = <0>;
263 };
264
265 i2c_pcie4: i2c@1 {
266 #address-cells = <1>;
267 #size-cells = <0>;
268 reg = <1>;
269 };
270
271 i2c_riser1: i2c@2 {
272 #address-cells = <1>;
273 #size-cells = <0>;
274 reg = <2>;
275 };
276
277 i2c_ocp: i2c@3 {
278 #address-cells = <1>;
279 #size-cells = <0>;
280 reg = <3>;
281 };
282 };
283};
284
285&i2c8 {
286 status = "okay";
287
288 eeprom@57 {
289 compatible = "atmel,24c256";
290 reg = <0x57>;
291 pagesize = <16>;
292 };
293};
294
295&i2c9 {
296 status = "okay";
297};
298
299&i2c10 {
300 status = "okay";
301};
302
303&i2c11 {
304 status = "okay";
305};
306
307&i2c12 {
308 status = "okay";
309};
310
311&ehci1 {
312 status = "okay";
313};
314
315&uhci {
316 status = "okay";
317};
318
319&gfx {
320 status = "okay";
321 memory-region = <&gfx_memory>;
322};
323
324&pwm_tacho {
325 status = "okay";
326 pinctrl-names = "default";
327 pinctrl-0 = <&pinctrl_pwm0_default
328 &pinctrl_pwm1_default
329 &pinctrl_pwm2_default
330 &pinctrl_pwm3_default
331 &pinctrl_pwm4_default
332 &pinctrl_pwm5_default
333 &pinctrl_pwm6_default>;
334
335 fan@0 {
336 reg = <0x00>;
337 aspeed,fan-tach-ch = /bits/ 8 <0x00>;
338 };
339
340 fan@1 {
341 reg = <0x00>;
342 aspeed,fan-tach-ch = /bits/ 8 <0x01>;
343 };
344
345 fan@2 {
346 reg = <0x01>;
347 aspeed,fan-tach-ch = /bits/ 8 <0x02>;
348 };
349
350 fan@3 {
351 reg = <0x01>;
352 aspeed,fan-tach-ch = /bits/ 8 <0x03>;
353 };
354
355 fan@4 {
356 reg = <0x02>;
357 aspeed,fan-tach-ch = /bits/ 8 <0x04>;
358 };
359
360 fan@5 {
361 reg = <0x02>;
362 aspeed,fan-tach-ch = /bits/ 8 <0x05>;
363 };
364
365 fan@6 {
366 reg = <0x03>;
367 aspeed,fan-tach-ch = /bits/ 8 <0x06>;
368 };
369
370 fan@7 {
371 reg = <0x03>;
372 aspeed,fan-tach-ch = /bits/ 8 <0x07>;
373 };
374
375 fan@8 {
376 reg = <0x04>;
377 aspeed,fan-tach-ch = /bits/ 8 <0x08>;
378 };
379
380 fan@9 {
381 reg = <0x04>;
382 aspeed,fan-tach-ch = /bits/ 8 <0x09>;
383 };
384
385 fan@10 {
386 reg = <0x05>;
387 aspeed,fan-tach-ch = /bits/ 8 <0x0a>;
388 };
389
390 fan@11 {
391 reg = <0x05>;
392 aspeed,fan-tach-ch = /bits/ 8 <0x0b>;
393 };
394
395 fan@12 {
396 reg = <0x06>;
397 aspeed,fan-tach-ch = /bits/ 8 <0x0c>;
398 };
399
400 fan@13 {
401 reg = <0x06>;
402 aspeed,fan-tach-ch = /bits/ 8 <0x0d>;
403 };
404};
405
406&gpio {
407
408 pin_gpio_b5 {
409 gpio-hog;
410 gpios = <ASPEED_GPIO(B, 5) GPIO_ACTIVE_HIGH>;
411 output-high;
412 line-name = "IRQ_BMC_PCH_SMI_LPC_N";
413 };
414
415 pin_gpio_f0 {
416 gpio-hog;
417 gpios = <ASPEED_GPIO(F, 0) GPIO_ACTIVE_HIGH>;
418 output-low;
419 line-name = "IRQ_BMC_PCH_NMI_R";
420 };
421
422 pin_gpio_f3 {
423 gpio-hog;
424 gpios = <ASPEED_GPIO(F, 3) GPIO_ACTIVE_HIGH>;
425 output-high;
426 line-name = "I2C_BUS0_RST_OUT_N";
427 };
428
429 pin_gpio_f4 {
430 gpio-hog;
431 gpios = <ASPEED_GPIO(F, 4) GPIO_ACTIVE_HIGH>;
432 output-low;
433 line-name = "FM_SKT0_FAULT_LED";
434 };
435
436 pin_gpio_f5 {
437 gpio-hog;
438 gpios = <ASPEED_GPIO(F, 5) GPIO_ACTIVE_HIGH>;
439 output-low;
440 line-name = "FM_SKT1_FAULT_LED";
441 };
442
443 pin_gpio_g4 {
444 gpio-hog;
445 gpios = <ASPEED_GPIO(G, 4) GPIO_ACTIVE_HIGH>;
446 output-high;
447 line-name = "FAN_PWR_CTL_N";
448 };
449
450 pin_gpio_g7 {
451 gpio-hog;
452 gpios = <ASPEED_GPIO(G, 7) GPIO_ACTIVE_HIGH>;
453 output-high;
454 line-name = "RST_BMC_PCIE_I2CMUX_N";
455 };
456
457 pin_gpio_h2 {
458 gpio-hog;
459 gpios = <ASPEED_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
460 output-high;
461 line-name = "PSU1_FFS_N_R";
462 };
463
464 pin_gpio_h3 {
465 gpio-hog;
466 gpios = <ASPEED_GPIO(H, 3) GPIO_ACTIVE_HIGH>;
467 output-high;
468 line-name = "PSU2_FFS_N_R";
469 };
470
471 pin_gpio_i3 {
472 gpio-hog;
473 gpios = <ASPEED_GPIO(I, 3) GPIO_ACTIVE_HIGH>;
474 output-high;
475 line-name = "BMC_INTRUDED_COVER";
476 };
477
478 pin_gpio_j2 {
479 gpio-hog;
480 gpios = <ASPEED_GPIO(J, 2) GPIO_ACTIVE_HIGH>;
481 output-high;
482 line-name = "BMC_BIOS_UPDATE_N";
483 };
484
485 pin_gpio_j3 {
486 gpio-hog;
487 gpios = <ASPEED_GPIO(J, 3) GPIO_ACTIVE_HIGH>;
488 output-high;
489 line-name = "RST_BMC_HDD_I2CMUX_N";
490 };
491
492 pin_gpio_s2 {
493 gpio-hog;
494 gpios = <ASPEED_GPIO(S, 2) GPIO_ACTIVE_HIGH>;
495 output-high;
496 line-name = "BMC_VGA_SW";
497 };
498
499 pin_gpio_s4 {
500 gpio-hog;
501 gpios = <ASPEED_GPIO(S, 4) GPIO_ACTIVE_HIGH>;
502 output;
503 line-name = "VBAT_EN_N";
504 };
505
506 pin_gpio_s6 {
507 gpio-hog;
508 gpios = <ASPEED_GPIO(S, 6) GPIO_ACTIVE_HIGH>;
509 output-high;
510 line-name = "PU_BMC_GPIOS6";
511 };
512
513 pin_gpio_y0 {
514 gpio-hog;
515 gpios = <ASPEED_GPIO(Y, 0) GPIO_ACTIVE_HIGH>;
516 output-low;
517 line-name = "BMC_NCSI_MUX_CTL_S0";
518 };
519
520 pin_gpio_y1 {
521 gpio-hog;
522 gpios = <ASPEED_GPIO(Y, 1) GPIO_ACTIVE_HIGH>;
523 output-low;
524 line-name = "BMC_NCSI_MUX_CTL_S1";
525 };
526
527 pin_gpio_z0 {
528 gpio-hog;
529 gpios = <ASPEED_GPIO(Z, 0) GPIO_ACTIVE_HIGH>;
530 output-high;
531 line-name = "I2C_RISER2_INT_N";
532 };
533
534 pin_gpio_z2 {
535 gpio-hog;
536 gpios = <ASPEED_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
537 output-high;
538 line-name = "I2C_RISER2_RESET_N";
539 };
540
541 pin_gpio_z3 {
542 gpio-hog;
543 gpios = <ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>;
544 output-high;
545 line-name = "FM_BMC_PCH_SCI_LPC_N";
546 };
547
548 pin_gpio_z7 {
549 gpio-hog;
550 gpios = <ASPEED_GPIO(Z, 7) GPIO_ACTIVE_HIGH>;
551 output-low;
552 line-name = "BMC_POST_CMPLT_N";
553 };
554
555 pin_gpio_aa0 {
556 gpio-hog;
557 gpios = <ASPEED_GPIO(AA, 0) GPIO_ACTIVE_HIGH>;
558 output-low;
559 line-name = "HOST_BMC_USB_SEL";
560 };
561
562 pin_gpio_aa5 {
563 gpio-hog;
564 gpios = <ASPEED_GPIO(AA, 5) GPIO_ACTIVE_HIGH>;
565 output-high;
566 line-name = "I2C_BUS1_RST_OUT_N";
567 };
568
569};