xref: /freebsd/sys/contrib/device-tree/src/arm/aspeed/aspeed-bmc-nvidia-msx4-bmc.dts (revision 69ed3df4f588860308677cda76cbcce1f19a54c9)
1// SPDX-License-Identifier: GPL-2.0
2/dts-v1/;
3
4#include "aspeed-g6.dtsi"
5#include <dt-bindings/gpio/aspeed-gpio.h>
6#include <dt-bindings/i2c/i2c.h>
7
8/ {
9	model = "AST2600 MSX4 BMC";
10	compatible = "nvidia,msx4-bmc", "aspeed,ast2600";
11
12	aliases {
13		serial0 = &uart1;
14		serial1 = &uart2;
15		serial2 = &uart3;
16		serial3 = &uart4;
17		serial4 = &uart5;
18	};
19
20	chosen {
21		stdout-path = "uart5:115200n8";
22	};
23
24	memory@80000000 {
25		device_type = "memory";
26		reg = <0x80000000 0x80000000>;
27	};
28
29	reserved-memory {
30		#address-cells = <1>;
31		#size-cells = <1>;
32		ranges;
33
34		gfx_memory: framebuffer {
35			compatible = "shared-dma-pool";
36			size = <0x01000000>;
37			alignment = <0x01000000>;
38			reusable;
39		};
40
41		video_engine_memory: jpegbuffer {
42			compatible = "shared-dma-pool";
43			size = <0x02000000>;	/* 32M */
44			alignment = <0x01000000>;
45			reusable;
46		};
47	};
48};
49
50&ehci1 {
51	status = "okay";
52};
53
54&fmc {
55	status = "okay";
56
57	flash@0 {
58		compatible = "jedec,spi-nor";
59		label = "bmc";
60		status = "okay";
61		#include "openbmc-flash-layout-128.dtsi"
62	};
63
64	flash@1 {
65		compatible = "jedec,spi-nor";
66		label = "alt-bmc";
67		spi-tx-bus-width = <1>;
68		spi-rx-bus-width = <1>;
69		status = "okay";
70		#include "openbmc-flash-layout-128-alt.dtsi"
71	};
72};
73
74&gfx {
75	memory-region = <&gfx_memory>;
76	status = "okay";
77};
78
79&gpio0 {
80	gpio-line-names =
81	/*A0-A7*/	"","","","","","","","",
82	/*B0-B7*/	"ASSERT_BMC_READY","","","","","","","",
83	/*C0-C7*/	"MON_PWR_GOOD","","","","","","","FP_ID_LED_N",
84	/*D0-D7*/	"","","","","","","","",
85	/*E0-E7*/	"","","","","","","","",
86	/*F0-F7*/	"","","","","","","","",
87	/*G0-G7*/	"","","FP_LED_STATUS_GREEN_N","FP_LED_STATUS_AMBER_N",
88			"","","","",
89	/*H0-H7*/	"","","","","","","","",
90	/*I0-I7*/	"","","","","","","","",
91	/*J0-J7*/	"","","","","","","","",
92	/*K0-K7*/	"","","","","","","","",
93	/*L0-L7*/	"","","","","","","","",
94	/*M0-M7*/	"","","","","","","","",
95	/*N0-N7*/	"","","","","","","","",
96	/*O0-O7*/	"","","","","","","","",
97	/*P0-P7*/	"MON_PWR_BTN_L","ASSERT_PWR_BTN_L","MON_RST_BTN_L",
98			"ASSERT_RST_BTN_L","","ASSERT_NMI_BTN_L","","",
99	/*Q0-Q7*/	"","","MEMORY_HOT_0","MEMORY_HOT_1","","","","",
100	/*R0-R7*/	"ID_BTN","","","","","VBAT_GPIO","","",
101	/*S0-S7*/	"","","RST_PCA_MUX","","","","","",
102	/*T0-T7*/	"","","","","","","","",
103	/*U0-U7*/	"","","","","","","","",
104	/*V0-V7*/	"","","","","","","","",
105	/*W0-W7*/	"","","","","","","","",
106	/*X0-X7*/	"","","","","","","","",
107	/*Y0-Y7*/	"","","","","","","","",
108	/*Z0-Z7*/	"","","","","","","","";
109};
110
111&gpio1 {
112	gpio-line-names =
113	/*18A0-18A7*/ "","","","","","","","",
114	/*18B0-18B7*/ "","","","","","","","",
115	/*18C0-18C7*/ "","","","","","","","",
116	/*18D0-18D7*/ "","","","","","","","",
117	/*18E0-18E3*/ "","","BMC_INIT_DONE","";
118};
119
120// Devices on these busses are available after POST
121// however there isn't a great way to defer probing
122// until that point today, as the BMC doesn't
123// have direct control over when the host completes
124// POST, especially from the kernel.
125&i2c0 {
126	status = "okay";
127};
128
129&i2c1 {
130	status = "okay";
131};
132
133&i2c2 {
134	status = "okay";
135};
136
137&i2c3 {
138	status = "okay";
139};
140
141&i2c4 {
142	status = "okay";
143
144	eeprom@51 {
145		compatible = "atmel,24c256";
146		reg = <0x51>;
147		pagesize = <64>;
148		label = "sku";
149	};
150};
151
152&i2c5 {
153	status = "okay";
154};
155
156&i2c6 {
157	status = "okay";
158};
159
160&i2c7 {
161	status = "okay";
162};
163
164&i2c8 {
165	status = "okay";
166};
167
168&i2c9 {
169	status = "okay";
170};
171
172&i2c10 {
173	status = "okay";
174};
175
176&i2c11 {
177	status = "okay";
178};
179
180&i2c12 {
181	status = "okay";
182};
183
184&i2c13 {
185	status = "okay";
186};
187
188&i2c15 {
189	status = "okay";
190};
191
192&kcs1 {
193	aspeed,lpc-io-reg = <0xca0>;
194	status = "okay";
195};
196
197&kcs2 {
198	aspeed,lpc-io-reg = <0xca8>;
199	status = "okay";
200};
201
202&kcs3 {
203	aspeed,lpc-io-reg = <0xca2>;
204	status = "okay";
205};
206
207&lpc_reset {
208	status = "okay";
209};
210
211&rtc {
212	status = "okay";
213};
214
215&sgpiom0 {
216	ngpios = <80>;
217	status = "okay";
218};
219
220&uart_routing {
221	status = "okay";
222};
223
224&uart1 {
225	status = "okay";
226};
227
228&uart2 {
229	status = "okay";
230};
231
232&uart3 {
233	status = "okay";
234};
235
236&uart4 {
237	status = "okay";
238};
239
240&uart5 {
241	status = "okay";
242};
243
244&video {
245	memory-region = <&video_engine_memory>;
246	status = "okay";
247};
248