Home | History | Annotate | Line # | Download | only in aspeed
      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 Greatlakes BMC";
     12 	compatible = "facebook,greatlakes-bmc", "aspeed,ast2600";
     13 
     14 	aliases {
     15 		serial4 = &uart5;
     16 	};
     17 
     18 	memory@80000000 {
     19 		device_type = "memory";
     20 		reg = <0x80000000 0x80000000>;
     21 	};
     22 
     23 	iio-hwmon {
     24 		compatible = "iio-hwmon";
     25 		io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
     26 				<&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
     27 				<&adc1 0>, <&adc1 2>, <&adc1 3>, <&adc1 4>,
     28 				<&adc1 5>, <&adc1 6>;
     29 	};
     30 };
     31 
     32 &uart1 {
     33 	status = "okay";
     34 };
     35 
     36 &uart2 {
     37 	status = "okay";
     38 };
     39 
     40 &uart3 {
     41 	status = "okay";
     42 };
     43 
     44 &uart4 {
     45 	status = "okay";
     46 };
     47 
     48 &uart5 {
     49 	status = "okay";
     50 };
     51 
     52 &wdt1 {
     53 	status = "okay";
     54 	pinctrl-names = "default";
     55 	pinctrl-0 = <&pinctrl_wdtrst1_default>;
     56 	aspeed,reset-type = "soc";
     57 	aspeed,external-signal;
     58 	aspeed,ext-push-pull;
     59 	aspeed,ext-active-high;
     60 	aspeed,ext-pulse-duration = <256>;
     61 };
     62 
     63 &mac3 {
     64 	status = "okay";
     65 	pinctrl-names = "default";
     66 	pinctrl-0 = <&pinctrl_rmii4_default>;
     67 	no-hw-checksum;
     68 	use-ncsi;
     69 	mellanox,multi-host;
     70 	ncsi-ctrl,start-redo-probe;
     71 	ncsi-ctrl,no-channel-monitor;
     72 	ncsi-package = <1>;
     73 	ncsi-channel = <1>;
     74 	ncsi-rexmit = <1>;
     75 	ncsi-timeout = <2>;
     76 };
     77 
     78 &rtc {
     79 	status = "okay";
     80 };
     81 
     82 &fmc {
     83 	status = "okay";
     84 	flash@0 {
     85 		status = "okay";
     86 		m25p,fast-read;
     87 		label = "bmc";
     88 		spi-rx-bus-width = <4>;
     89 		spi-max-frequency = <50000000>;
     90 #include "openbmc-flash-layout-64.dtsi"
     91 	};
     92 	flash@1 {
     93 		status = "okay";
     94 		m25p,fast-read;
     95 		label = "bmc2";
     96 		spi-rx-bus-width = <4>;
     97 		spi-max-frequency = <50000000>;
     98 	};
     99 };
    100 
    101 &i2c0 {
    102 	status = "okay";
    103 	multi-master;
    104 	ipmb@10 {
    105 		compatible = "ipmb-dev";
    106 		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
    107 		i2c-protocol;
    108 	};
    109 };
    110 
    111 &i2c1 {
    112 	status = "okay";
    113 	multi-master;
    114 	ipmb@10 {
    115 		compatible = "ipmb-dev";
    116 		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
    117 		i2c-protocol;
    118 	};
    119 };
    120 
    121 &i2c2 {
    122 	status = "okay";
    123 	multi-master;
    124 	ipmb@10 {
    125 		compatible = "ipmb-dev";
    126 		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
    127 		i2c-protocol;
    128 	};
    129 };
    130 
    131 &i2c3 {
    132 	status = "okay";
    133 	multi-master;
    134 	ipmb@10 {
    135 		compatible = "ipmb-dev";
    136 		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
    137 		i2c-protocol;
    138 	};
    139 };
    140 
    141 &i2c4 {
    142 	status = "okay";
    143 };
    144 
    145 &i2c5 {
    146 	status = "okay";
    147 };
    148 
    149 &i2c6 {
    150 	status = "okay";
    151 };
    152 
    153 &i2c7 {
    154 	status = "okay";
    155 };
    156 
    157 &i2c8 {
    158 	status = "okay";
    159 	mctp-controller;
    160 	temperature-sensor@1f {
    161 		compatible = "ti,tmp421";
    162 		reg = <0x1f>;
    163 	};
    164 	// NIC EEPROM
    165 	eeprom@50 {
    166 		compatible = "st,24c32";
    167 		reg = <0x50>;
    168 	};
    169 	mctp@10 {
    170 		compatible = "mctp-i2c-controller";
    171 		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
    172 	};
    173 };
    174 
    175 &i2c9 {
    176 	status = "okay";
    177 	multi-master;
    178 	ipmb@10 {
    179 		compatible = "ipmb-dev";
    180 		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
    181 		i2c-protocol;
    182 	};
    183 };
    184 
    185 &i2c10 {
    186 	status = "okay";
    187 };
    188 
    189 &i2c11 {
    190 	status = "okay";
    191 	eeprom@51 {
    192 		compatible = "atmel,24c128";
    193 		reg = <0x51>;
    194 	};
    195 	eeprom@54 {
    196 		compatible = "atmel,24c128";
    197 		reg = <0x54>;
    198 	};
    199 };
    200 
    201 &i2c12 {
    202 	status = "okay";
    203 	temperature-sensor@4f {
    204 		compatible = "national,lm75";
    205 		reg = <0x4f>;
    206 	};
    207 };
    208 
    209 &i2c13 {
    210 	status = "okay";
    211 };
    212 
    213 &adc0 {
    214 	status = "okay";
    215 	pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
    216 			&pinctrl_adc2_default &pinctrl_adc3_default
    217 			&pinctrl_adc4_default &pinctrl_adc5_default
    218 			&pinctrl_adc6_default &pinctrl_adc7_default>;
    219 };
    220 
    221 &adc1 {
    222 	status = "okay";
    223 	pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc10_default
    224 			&pinctrl_adc11_default &pinctrl_adc12_default
    225 			&pinctrl_adc13_default &pinctrl_adc14_default>;
    226 };
    227 
    228 
    229 &ehci0 {
    230 	status = "okay";
    231 };
    232 
    233 &ehci1 {
    234 	status = "okay";
    235 };
    236 
    237 &uhci {
    238 	status = "okay";
    239 };
    240 
    241 &gpio0 {
    242 	pinctrl-names = "default";
    243 	pinctrl-0 = <&pinctrl_gpiu1_default &pinctrl_gpiu7_default>;
    244 
    245 	gpio-line-names =
    246 	/*A0-A7*/ "","","","","","","","",
    247 	/*B0-B7*/ "power-bmc-nic","presence-ocp-debug",
    248 		  "power-bmc-slot1","power-bmc-slot2",
    249 		  "power-bmc-slot3","power-bmc-slot4","","",
    250 	/*C0-C7*/ "presence-ocp-nic","","","reset-cause-nic-primary",
    251 		  "reset-cause-nic-secondary","","","",
    252 	/*D0-D7*/ "","","","","","","","",
    253 	/*E0-E7*/ "","","","","","","","",
    254 	/*F0-F7*/ "slot1-bmc-reset-button","slot2-bmc-reset-button",
    255 		  "slot3-bmc-reset-button","slot4-bmc-reset-button",
    256 		  "","","","presence-emmc",
    257 	/*G0-G7*/ "","","","","","","","",
    258 	/*H0-H7*/ "","","","",
    259 		  "presence-mb-slot1","presence-mb-slot2",
    260 		  "presence-mb-slot3","presence-mb-slot4",
    261 	/*I0-I7*/ "","","","","","","bb-bmc-button","",
    262 	/*J0-J7*/ "","","","","","","","",
    263 	/*K0-K7*/ "","","","","","","","",
    264 	/*L0-L7*/ "","","","","","","","",
    265 	/*M0-M7*/ "","power-nic-bmc-enable","","usb-bmc-enable","","reset-cause-usb-hub","","",
    266 	/*N0-N7*/ "","","","","bmc-ready","","","",
    267 	/*O0-O7*/ "","","","","","","fan0-bmc-cpld-enable","fan1-bmc-cpld-enable",
    268 	/*P0-P7*/ "fan2-bmc-cpld-enable","fan3-bmc-cpld-enable",
    269 		  "reset-cause-pcie-slot1","reset-cause-pcie-slot2",
    270 		  "reset-cause-pcie-slot3","reset-cause-pcie-slot4","","",
    271 	/*Q0-Q7*/ "","","","","","","","",
    272 	/*R0-R7*/ "","","","","","","","",
    273 	/*S0-S7*/ "","","power-p5v-usb","presence-bmc-tpm","","","","",
    274 	/*T0-T7*/ "","","","","","","","",
    275 	/*U0-U7*/ "","","","","","","","GND",
    276 	/*V0-V7*/ "bmc-slot1-ac-button","bmc-slot2-ac-button",
    277 		  "bmc-slot3-ac-button","bmc-slot4-ac-button",
    278 		  "","","","",
    279 	/*W0-W7*/ "","","","","","","","",
    280 	/*X0-X7*/ "","","","","","","","",
    281 	/*Y0-Y7*/ "","","","reset-cause-emmc","","","","",
    282 	/*Z0-Z7*/ "","","","","","","","";
    283 };
    284 
    285 &gpio1 {
    286 	gpio-line-names =
    287 	/*18A0-18A7*/ "","","","","","","","",
    288 	/*18B0-18B7*/ "","","","","","","","",
    289 	/*18C0-18C7*/ "","","","","","","","",
    290 	/*18D0-18D7*/ "","","","","","","","",
    291 	/*18E0-18E3*/ "","","","","","","","";
    292 };
    293