xref: /freebsd-src/sys/contrib/device-tree/src/arm/aspeed/aspeed-bmc-facebook-elbert.dts (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+
2f126890aSEmmanuel Vadot// Copyright (c) 2020 Facebook Inc.
3f126890aSEmmanuel Vadot
4f126890aSEmmanuel Vadot/dts-v1/;
5f126890aSEmmanuel Vadot
6f126890aSEmmanuel Vadot#include "ast2600-facebook-netbmc-common.dtsi"
7f126890aSEmmanuel Vadot
8f126890aSEmmanuel Vadot/ {
9f126890aSEmmanuel Vadot	model = "Facebook Elbert BMC";
10f126890aSEmmanuel Vadot	compatible = "facebook,elbert-bmc", "aspeed,ast2600";
11f126890aSEmmanuel Vadot
12f126890aSEmmanuel Vadot	aliases {
13f126890aSEmmanuel Vadot		serial0 = &uart5;
14f126890aSEmmanuel Vadot		serial1 = &uart1;
15f126890aSEmmanuel Vadot		serial2 = &uart2;
16f126890aSEmmanuel Vadot		serial3 = &uart3;
17f126890aSEmmanuel Vadot
18f126890aSEmmanuel Vadot		/*
19f126890aSEmmanuel Vadot		 * 8 child channels of PCA9548 2-0075.
20f126890aSEmmanuel Vadot		 */
21f126890aSEmmanuel Vadot		i2c16 = &imux16;
22f126890aSEmmanuel Vadot		i2c17 = &imux17;
23f126890aSEmmanuel Vadot		i2c18 = &imux18;
24f126890aSEmmanuel Vadot		i2c19 = &imux19;
25f126890aSEmmanuel Vadot		i2c20 = &imux20;
26f126890aSEmmanuel Vadot		i2c21 = &imux21;
27f126890aSEmmanuel Vadot		i2c22 = &imux22;
28f126890aSEmmanuel Vadot		i2c23 = &imux23;
29f126890aSEmmanuel Vadot
30f126890aSEmmanuel Vadot		/*
31f126890aSEmmanuel Vadot		 * 8 child channels of PCA9548 5-0075.
32f126890aSEmmanuel Vadot		 */
33f126890aSEmmanuel Vadot		i2c24 = &imux24;
34f126890aSEmmanuel Vadot		i2c25 = &imux25;
35f126890aSEmmanuel Vadot		i2c26 = &imux26;
36f126890aSEmmanuel Vadot		i2c27 = &imux27;
37f126890aSEmmanuel Vadot		i2c28 = &imux28;
38f126890aSEmmanuel Vadot		i2c29 = &imux29;
39f126890aSEmmanuel Vadot		i2c30 = &imux30;
40f126890aSEmmanuel Vadot		i2c31 = &imux31;
41f126890aSEmmanuel Vadot	};
42f126890aSEmmanuel Vadot
43f126890aSEmmanuel Vadot	chosen {
44f126890aSEmmanuel Vadot		stdout-path = &uart5;
45f126890aSEmmanuel Vadot	};
46f126890aSEmmanuel Vadot
47f126890aSEmmanuel Vadot	spi_gpio: spi {
48f126890aSEmmanuel Vadot		num-chipselects = <1>;
49f126890aSEmmanuel Vadot		cs-gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>;
50f126890aSEmmanuel Vadot	};
51f126890aSEmmanuel Vadot};
52f126890aSEmmanuel Vadot
53f126890aSEmmanuel Vadot&lpc_ctrl {
54f126890aSEmmanuel Vadot	status = "okay";
55f126890aSEmmanuel Vadot};
56f126890aSEmmanuel Vadot
57f126890aSEmmanuel Vadot&kcs2 {
58f126890aSEmmanuel Vadot	status = "okay";
59f126890aSEmmanuel Vadot	aspeed,lpc-io-reg = <0xca8>;
60f126890aSEmmanuel Vadot};
61f126890aSEmmanuel Vadot
62f126890aSEmmanuel Vadot&kcs3 {
63f126890aSEmmanuel Vadot	status = "okay";
64f126890aSEmmanuel Vadot	aspeed,lpc-io-reg = <0xca2>;
65f126890aSEmmanuel Vadot};
66f126890aSEmmanuel Vadot
67f126890aSEmmanuel Vadot&i2c2 {
68*aa1a8ff2SEmmanuel Vadot	i2c-mux@75 {
69f126890aSEmmanuel Vadot		compatible = "nxp,pca9548";
70f126890aSEmmanuel Vadot		#address-cells = <1>;
71f126890aSEmmanuel Vadot		#size-cells = <0>;
72f126890aSEmmanuel Vadot		reg = <0x75>;
73f126890aSEmmanuel Vadot		i2c-mux-idle-disconnect;
74f126890aSEmmanuel Vadot
75f126890aSEmmanuel Vadot		imux16: i2c@0 {
76f126890aSEmmanuel Vadot			#address-cells = <1>;
77f126890aSEmmanuel Vadot			#size-cells = <0>;
78f126890aSEmmanuel Vadot			reg = <0>;
79f126890aSEmmanuel Vadot		};
80f126890aSEmmanuel Vadot
81f126890aSEmmanuel Vadot		imux17: i2c@1 {
82f126890aSEmmanuel Vadot			#address-cells = <1>;
83f126890aSEmmanuel Vadot			#size-cells = <0>;
84f126890aSEmmanuel Vadot			reg = <1>;
85f126890aSEmmanuel Vadot		};
86f126890aSEmmanuel Vadot
87f126890aSEmmanuel Vadot		imux18: i2c@2 {
88f126890aSEmmanuel Vadot			#address-cells = <1>;
89f126890aSEmmanuel Vadot			#size-cells = <0>;
90f126890aSEmmanuel Vadot			reg = <2>;
91f126890aSEmmanuel Vadot		};
92f126890aSEmmanuel Vadot
93f126890aSEmmanuel Vadot		imux19: i2c@3 {
94f126890aSEmmanuel Vadot			#address-cells = <1>;
95f126890aSEmmanuel Vadot			#size-cells = <0>;
96f126890aSEmmanuel Vadot			reg = <3>;
97f126890aSEmmanuel Vadot		};
98f126890aSEmmanuel Vadot
99f126890aSEmmanuel Vadot		imux20: i2c@4 {
100f126890aSEmmanuel Vadot			#address-cells = <1>;
101f126890aSEmmanuel Vadot			#size-cells = <0>;
102f126890aSEmmanuel Vadot			reg = <4>;
103f126890aSEmmanuel Vadot		};
104f126890aSEmmanuel Vadot
105f126890aSEmmanuel Vadot		imux21: i2c@5 {
106f126890aSEmmanuel Vadot			#address-cells = <1>;
107f126890aSEmmanuel Vadot			#size-cells = <0>;
108f126890aSEmmanuel Vadot			reg = <5>;
109f126890aSEmmanuel Vadot		};
110f126890aSEmmanuel Vadot
111f126890aSEmmanuel Vadot		imux22: i2c@6 {
112f126890aSEmmanuel Vadot			#address-cells = <1>;
113f126890aSEmmanuel Vadot			#size-cells = <0>;
114f126890aSEmmanuel Vadot			reg = <6>;
115f126890aSEmmanuel Vadot		};
116f126890aSEmmanuel Vadot
117f126890aSEmmanuel Vadot		imux23: i2c@7 {
118f126890aSEmmanuel Vadot			#address-cells = <1>;
119f126890aSEmmanuel Vadot			#size-cells = <0>;
120f126890aSEmmanuel Vadot			reg = <7>;
121f126890aSEmmanuel Vadot		};
122f126890aSEmmanuel Vadot	};
123f126890aSEmmanuel Vadot};
124f126890aSEmmanuel Vadot
125f126890aSEmmanuel Vadot&i2c5 {
126*aa1a8ff2SEmmanuel Vadot	i2c-mux@75 {
127f126890aSEmmanuel Vadot		compatible = "nxp,pca9548";
128f126890aSEmmanuel Vadot		#address-cells = <1>;
129f126890aSEmmanuel Vadot		#size-cells = <0>;
130f126890aSEmmanuel Vadot		reg = <0x75>;
131f126890aSEmmanuel Vadot		i2c-mux-idle-disconnect;
132f126890aSEmmanuel Vadot
133f126890aSEmmanuel Vadot		imux24: i2c@0 {
134f126890aSEmmanuel Vadot			#address-cells = <1>;
135f126890aSEmmanuel Vadot			#size-cells = <0>;
136f126890aSEmmanuel Vadot			reg = <0>;
137f126890aSEmmanuel Vadot		};
138f126890aSEmmanuel Vadot
139f126890aSEmmanuel Vadot		imux25: i2c@1 {
140f126890aSEmmanuel Vadot			#address-cells = <1>;
141f126890aSEmmanuel Vadot			#size-cells = <0>;
142f126890aSEmmanuel Vadot			reg = <1>;
143f126890aSEmmanuel Vadot		};
144f126890aSEmmanuel Vadot
145f126890aSEmmanuel Vadot		imux26: i2c@2 {
146f126890aSEmmanuel Vadot			#address-cells = <1>;
147f126890aSEmmanuel Vadot			#size-cells = <0>;
148f126890aSEmmanuel Vadot			reg = <2>;
149f126890aSEmmanuel Vadot		};
150f126890aSEmmanuel Vadot
151f126890aSEmmanuel Vadot		imux27: i2c@3 {
152f126890aSEmmanuel Vadot			#address-cells = <1>;
153f126890aSEmmanuel Vadot			#size-cells = <0>;
154f126890aSEmmanuel Vadot			reg = <3>;
155f126890aSEmmanuel Vadot		};
156f126890aSEmmanuel Vadot
157f126890aSEmmanuel Vadot		imux28: i2c@4 {
158f126890aSEmmanuel Vadot			#address-cells = <1>;
159f126890aSEmmanuel Vadot			#size-cells = <0>;
160f126890aSEmmanuel Vadot			reg = <4>;
161f126890aSEmmanuel Vadot		};
162f126890aSEmmanuel Vadot
163f126890aSEmmanuel Vadot		imux29: i2c@5 {
164f126890aSEmmanuel Vadot			#address-cells = <1>;
165f126890aSEmmanuel Vadot			#size-cells = <0>;
166f126890aSEmmanuel Vadot			reg = <5>;
167f126890aSEmmanuel Vadot		};
168f126890aSEmmanuel Vadot
169f126890aSEmmanuel Vadot		imux30: i2c@6 {
170f126890aSEmmanuel Vadot			#address-cells = <1>;
171f126890aSEmmanuel Vadot			#size-cells = <0>;
172f126890aSEmmanuel Vadot			reg = <6>;
173f126890aSEmmanuel Vadot		};
174f126890aSEmmanuel Vadot
175f126890aSEmmanuel Vadot		imux31: i2c@7 {
176f126890aSEmmanuel Vadot			#address-cells = <1>;
177f126890aSEmmanuel Vadot			#size-cells = <0>;
178f126890aSEmmanuel Vadot			reg = <7>;
179f126890aSEmmanuel Vadot		};
180f126890aSEmmanuel Vadot	};
181f126890aSEmmanuel Vadot};
182f126890aSEmmanuel Vadot
183f126890aSEmmanuel Vadot&i2c11 {
184f126890aSEmmanuel Vadot	status = "okay";
185f126890aSEmmanuel Vadot};
186f126890aSEmmanuel Vadot
187f126890aSEmmanuel Vadot/*
188f126890aSEmmanuel Vadot * BMC's "mac3" controller is connected to BCM53134P's IMP_RGMII port
189f126890aSEmmanuel Vadot * directly (fixed link, no PHY in between).
190f126890aSEmmanuel Vadot * Note: BMC's "mdio0" controller is connected to BCM53134P's MDIO
191f126890aSEmmanuel Vadot * interface, and the MDIO channel will be enabled in dts later, when
192f126890aSEmmanuel Vadot * BCM53134 is added to "bcm53xx" DSA driver.
193f126890aSEmmanuel Vadot */
194f126890aSEmmanuel Vadot&mac3 {
195f126890aSEmmanuel Vadot	status = "okay";
196f126890aSEmmanuel Vadot	phy-mode = "rgmii";
197f126890aSEmmanuel Vadot	pinctrl-names = "default";
198f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_rgmii4_default>;
199f126890aSEmmanuel Vadot	fixed-link {
200f126890aSEmmanuel Vadot		speed = <1000>;
201f126890aSEmmanuel Vadot		full-duplex;
202f126890aSEmmanuel Vadot	};
203f126890aSEmmanuel Vadot};
204