• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// SPDX-License-Identifier: GPL-2.0-or-later
2// Copyright 2022 Facebook Inc.
3
4/dts-v1/;
5#include "aspeed-g6.dtsi"
6#include <dt-bindings/gpio/aspeed-gpio.h>
7#include <dt-bindings/leds/leds-pca955x.h>
8#include <dt-bindings/i2c/i2c.h>
9
10/ {
11	model = "Facebook Yosemite 4 BMC";
12	compatible = "facebook,yosemite4-bmc", "aspeed,ast2600";
13
14	aliases {
15		serial4 = &uart5;
16		serial5 = &uart6;
17		serial6 = &uart7;
18		serial7 = &uart8;
19		serial8 = &uart9;
20	};
21
22	chosen {
23		stdout-path = "serial4:57600n8";
24	};
25
26	memory@80000000 {
27		device_type = "memory";
28		reg = <0x80000000 0x80000000>;
29	};
30
31	iio-hwmon {
32		compatible = "iio-hwmon";
33		io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
34				<&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
35				<&adc1 0>, <&adc1 1>;
36	};
37};
38
39&uart1 {
40	status = "okay";
41};
42
43&uart2 {
44	status = "okay";
45};
46
47&uart3 {
48	status = "okay";
49};
50
51&uart4 {
52	status = "okay";
53};
54
55&uart5 {
56	status = "okay";
57};
58
59&uart6 {
60	status = "okay";
61};
62
63&uart7 {
64	status = "okay";
65};
66
67&uart8 {
68	status = "okay";
69};
70
71&uart9 {
72	status = "okay";
73};
74
75&wdt1 {
76	status = "okay";
77	pinctrl-names = "default";
78	pinctrl-0 = <&pinctrl_wdtrst1_default>;
79	aspeed,reset-type = "soc";
80	aspeed,external-signal;
81	aspeed,ext-push-pull;
82	aspeed,ext-active-high;
83	aspeed,ext-pulse-duration = <256>;
84};
85
86&mac2 {
87	status = "okay";
88	pinctrl-names = "default";
89	pinctrl-0 = <&pinctrl_rmii3_default>;
90	use-ncsi;
91	mlx,multi-host;
92};
93
94&mac3 {
95	status = "okay";
96	pinctrl-names = "default";
97	pinctrl-0 = <&pinctrl_rmii4_default>;
98	use-ncsi;
99	mlx,multi-host;
100};
101
102&fmc {
103	status = "okay";
104	flash@0 {
105		status = "okay";
106		m25p,fast-read;
107		label = "bmc";
108		spi-rx-bus-width = <4>;
109		spi-max-frequency = <50000000>;
110#include "openbmc-flash-layout-64.dtsi"
111	};
112	flash@1 {
113		status = "okay";
114		m25p,fast-read;
115		label = "bmc2";
116		spi-rx-bus-width = <4>;
117		spi-max-frequency = <50000000>;
118	};
119};
120
121&i2c0 {
122	status = "okay";
123	mctp-controller;
124	bus-frequency = <400000>;
125	multi-master;
126
127	mctp@10 {
128		compatible = "mctp-i2c-controller";
129		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
130	};
131
132	power-sensor@40 {
133		compatible = "adi,adm1278";
134		reg = <0x40>;
135	};
136};
137
138&i2c1 {
139	status = "okay";
140	mctp-controller;
141	bus-frequency = <400000>;
142	multi-master;
143
144	mctp@10 {
145		compatible = "mctp-i2c-controller";
146		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
147	};
148
149	power-sensor@40 {
150		compatible = "adi,adm1278";
151		reg = <0x40>;
152	};
153};
154
155&i2c2 {
156	status = "okay";
157	mctp-controller;
158	bus-frequency = <400000>;
159	multi-master;
160
161	mctp@10 {
162		compatible = "mctp-i2c-controller";
163		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
164	};
165
166	power-sensor@40 {
167		compatible = "adi,adm1278";
168		reg = <0x40>;
169	};
170};
171
172&i2c3 {
173	status = "okay";
174	mctp-controller;
175	bus-frequency = <400000>;
176	multi-master;
177
178	mctp@10 {
179		compatible = "mctp-i2c-controller";
180		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
181	};
182
183	power-sensor@40 {
184		compatible = "adi,adm1278";
185		reg = <0x40>;
186	};
187};
188
189&i2c4 {
190	status = "okay";
191	mctp-controller;
192	bus-frequency = <400000>;
193	multi-master;
194
195	mctp@10 {
196		compatible = "mctp-i2c-controller";
197		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
198	};
199
200	power-sensor@40 {
201		compatible = "adi,adm1278";
202		reg = <0x40>;
203	};
204};
205
206&i2c5 {
207	status = "okay";
208	mctp-controller;
209	bus-frequency = <400000>;
210	multi-master;
211
212	mctp@10 {
213		compatible = "mctp-i2c-controller";
214		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
215	};
216
217	power-sensor@40 {
218		compatible = "adi,adm1278";
219		reg = <0x40>;
220	};
221};
222
223&i2c6 {
224	status = "okay";
225	mctp-controller;
226	bus-frequency = <400000>;
227	multi-master;
228
229	mctp@10 {
230		compatible = "mctp-i2c-controller";
231		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
232	};
233
234	power-sensor@40 {
235		compatible = "adi,adm1278";
236		reg = <0x40>;
237	};
238};
239
240&i2c7 {
241	status = "okay";
242	mctp-controller;
243	bus-frequency = <400000>;
244	multi-master;
245
246	mctp@10 {
247		compatible = "mctp-i2c-controller";
248		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
249	};
250
251	power-sensor@40 {
252		compatible = "adi,adm1278";
253		reg = <0x40>;
254	};
255};
256
257&i2c8 {
258	status = "okay";
259	bus-frequency = <400000>;
260	i2c-mux@70 {
261		compatible = "nxp,pca9544";
262		idle-state = <0>;
263		i2c-mux-idle-disconnect;
264		reg = <0x70>;
265	};
266};
267
268&i2c9 {
269	status = "okay";
270	bus-frequency = <400000>;
271	i2c-mux@71 {
272		compatible = "nxp,pca9544";
273		idle-state = <0>;
274		i2c-mux-idle-disconnect;
275		reg = <0x71>;
276	};
277};
278
279&i2c10 {
280	status = "okay";
281	bus-frequency = <400000>;
282};
283
284&i2c11 {
285	status = "okay";
286	power-sensor@10 {
287		compatible = "adi,adm1272";
288		reg = <0x10>;
289	};
290
291	power-sensor@12 {
292		compatible = "adi,adm1272";
293		reg = <0x12>;
294	};
295
296	gpio@20 {
297		compatible = "nxp,pca9555";
298		reg = <0x20>;
299		gpio-controller;
300		#gpio-cells = <2>;
301	};
302
303	gpio@21 {
304		compatible = "nxp,pca9555";
305		reg = <0x21>;
306		gpio-controller;
307		#gpio-cells = <2>;
308	};
309
310	gpio@22 {
311		compatible = "nxp,pca9555";
312		reg = <0x22>;
313		gpio-controller;
314		#gpio-cells = <2>;
315	};
316
317	gpio@23 {
318		compatible = "nxp,pca9555";
319		reg = <0x23>;
320		gpio-controller;
321		#gpio-cells = <2>;
322	};
323
324	temperature-sensor@48 {
325		compatible = "ti,tmp75";
326		reg = <0x48>;
327	};
328
329	temperature-sensor@49 {
330		compatible = "ti,tmp75";
331		reg = <0x49>;
332	};
333
334	temperature-sensor@4a {
335		compatible = "ti,tmp75";
336		reg = <0x4a>;
337	};
338
339	temperature-sensor@4b {
340		compatible = "ti,tmp75";
341		reg = <0x4b>;
342	};
343
344	eeprom@54 {
345		compatible = "atmel,24c256";
346		reg = <0x54>;
347	};
348};
349
350&i2c12 {
351	status = "okay";
352	bus-frequency = <400000>;
353
354	temperature-sensor@48 {
355		compatible = "ti,tmp75";
356		reg = <0x48>;
357	};
358
359	eeprom@50 {
360		compatible = "atmel,24c128";
361		reg = <0x50>;
362	};
363
364	rtc@6f {
365		compatible = "nuvoton,nct3018y";
366		reg = <0x6f>;
367	};
368};
369
370&i2c13 {
371	status = "okay";
372	bus-frequency = <400000>;
373};
374
375&i2c14 {
376	status = "okay";
377	bus-frequency = <400000>;
378	adc@1d {
379		compatible = "ti,adc128d818";
380		reg = <0x1d>;
381		ti,mode = /bits/ 8 <2>;
382	};
383
384	adc@35 {
385		compatible = "ti,adc128d818";
386		reg = <0x35>;
387		ti,mode = /bits/ 8 <2>;
388	};
389
390	adc@37 {
391		compatible = "ti,adc128d818";
392		reg = <0x37>;
393		ti,mode = /bits/ 8 <2>;
394	};
395
396	power-sensor@40 {
397		compatible = "ti,ina230";
398		reg = <0x40>;
399	};
400
401	power-sensor@41 {
402		compatible = "ti,ina230";
403		reg = <0x41>;
404	};
405
406	power-sensor@42 {
407		compatible = "ti,ina230";
408		reg = <0x42>;
409	};
410
411	power-sensor@43 {
412		compatible = "ti,ina230";
413		reg = <0x43>;
414	};
415
416	power-sensor@44 {
417		compatible = "ti,ina230";
418		reg = <0x44>;
419	};
420
421	temperature-sensor@4e {
422		compatible = "ti,tmp75";
423		reg = <0x4e>;
424	};
425
426	temperature-sensor@4f {
427		compatible = "ti,tmp75";
428		reg = <0x4f>;
429	};
430
431	eeprom@51 {
432		compatible = "atmel,24c128";
433		reg = <0x51>;
434	};
435
436	i2c-mux@71 {
437		compatible = "nxp,pca9846";
438		#address-cells = <1>;
439		#size-cells = <0>;
440
441		idle-state = <0>;
442		i2c-mux-idle-disconnect;
443		reg = <0x71>;
444
445		i2c@0 {
446			#address-cells = <1>;
447			#size-cells = <0>;
448			reg = <0>;
449
450			adc@1f {
451				compatible = "ti,adc128d818";
452				reg = <0x1f>;
453				ti,mode = /bits/ 8 <2>;
454			};
455
456			pwm@20{
457				compatible = "maxim,max31790";
458				reg = <0x20>;
459			};
460
461			gpio@22{
462				compatible = "ti,tca6424";
463				reg = <0x22>;
464				gpio-controller;
465				#gpio-cells = <2>;
466			};
467
468			pwm@23{
469				compatible = "maxim,max31790";
470				reg = <0x23>;
471			};
472
473			adc@33 {
474				compatible = "maxim,max11615";
475				reg = <0x33>;
476			};
477
478			eeprom@52 {
479				compatible = "atmel,24c128";
480				reg = <0x52>;
481			};
482
483			gpio@61 {
484				compatible = "nxp,pca9552";
485				reg = <0x61>;
486				#address-cells = <1>;
487				#size-cells = <0>;
488				gpio-controller;
489				#gpio-cells = <2>;
490			};
491		};
492
493		i2c@1 {
494			#address-cells = <1>;
495			#size-cells = <0>;
496			reg = <0>;
497
498			adc@1f {
499				compatible = "ti,adc128d818";
500				reg = <0x1f>;
501				ti,mode = /bits/ 8 <2>;
502			};
503
504			pwm@20{
505				compatible = "maxim,max31790";
506				reg = <0x20>;
507			};
508
509			gpio@22{
510				compatible = "ti,tca6424";
511				reg = <0x22>;
512				gpio-controller;
513				#gpio-cells = <2>;
514			};
515
516			pwm@23{
517				compatible = "maxim,max31790";
518				reg = <0x23>;
519			};
520
521			adc@33 {
522				compatible = "maxim,max11615";
523				reg = <0x33>;
524			};
525
526			eeprom@52 {
527				compatible = "atmel,24c128";
528				reg = <0x52>;
529			};
530
531			gpio@61 {
532				compatible = "nxp,pca9552";
533				reg = <0x61>;
534				#address-cells = <1>;
535				#size-cells = <0>;
536				gpio-controller;
537				#gpio-cells = <2>;
538			};
539		};
540	};
541
542	i2c-mux@73 {
543		compatible = "nxp,pca9544";
544		#address-cells = <1>;
545		#size-cells = <0>;
546
547		idle-state = <0>;
548		i2c-mux-idle-disconnect;
549		reg = <0x73>;
550
551		i2c@0 {
552			#address-cells = <1>;
553			#size-cells = <0>;
554			reg = <0>;
555
556			adc@35 {
557				compatible = "maxim,max11617";
558				reg = <0x35>;
559			};
560		};
561
562		i2c@1 {
563			#address-cells = <1>;
564			#size-cells = <0>;
565			reg = <0>;
566
567			adc@35 {
568				compatible = "maxim,max11617";
569				reg = <0x35>;
570			};
571		};
572	};
573};
574
575&i2c15 {
576	status = "okay";
577	mctp-controller;
578	multi-master;
579	bus-frequency = <400000>;
580
581	mctp@10 {
582		compatible = "mctp-i2c-controller";
583		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
584	};
585
586	i2c-mux@72 {
587		compatible = "nxp,pca9544";
588		idle-state = <0>;
589		i2c-mux-idle-disconnect;
590		reg = <0x72>;
591	};
592};
593
594&adc0 {
595	ref_voltage = <2500>;
596	status = "okay";
597	pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
598			&pinctrl_adc2_default &pinctrl_adc3_default
599			&pinctrl_adc4_default &pinctrl_adc5_default
600			&pinctrl_adc6_default &pinctrl_adc7_default>;
601};
602
603&adc1 {
604	ref_voltage = <2500>;
605	status = "okay";
606	pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default>;
607};
608
609
610&ehci0 {
611	status = "okay";
612};
613
614&ehci1 {
615	status = "okay";
616};
617
618&uhci {
619	status = "okay";
620};
621