[PATCH] ARM: dts: aspeed: Adding Inventec Transformers BMC
Lin.TommySC 林世欽 TAO
Lin.TommySC at inventec.com
Fri Aug 27 11:20:33 AEST 2021
Initial introduction of Inventec Transformers family equipped with Aspeed 2600 BMC SoC.
Signed-off-by: Lin.TommySC <lin.tommysc at inventec.com>
---
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm/boot/dts/Makefile | 1 +
.../dts/aspeed-bmc-inventec-transformers.dts | 486 ++++++++++++++++++
3 files changed, 489 insertions(+)
create mode 100644 arch/arm/boot/dts/aspeed-bmc-inventec-transformers.dts
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 355b81148b85..28c068ed0a75 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -507,6 +507,8 @@ patternProperties:
description: Inter Control Group
"^invensense,.*":
description: InvenSense Inc.
+ "^inventec,.*":
+ description: Inventec Corporation
"^inversepath,.*":
description: Inverse Path
"^iom,.*":
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 48d48c85de9e..930b8ba6c3c5 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1407,6 +1407,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
aspeed-bmc-intel-s2600wf.dtb \
aspeed-bmc-inspur-fp5280g2.dtb \
aspeed-bmc-inspur-nf5280m6.dtb \
+ aspeed-bmc-inventec-transformers.dtb \
aspeed-bmc-lenovo-hr630.dtb \
aspeed-bmc-lenovo-hr855xg2.dtb \
aspeed-bmc-microsoft-olympus.dtb \
diff --git a/arch/arm/boot/dts/aspeed-bmc-inventec-transformers.dts b/arch/arm/boot/dts/aspeed-bmc-inventec-transformers.dts
new file mode 100644
index 000000000000..4ff28d1439cd
--- /dev/null
+++ b/arch/arm/boot/dts/aspeed-bmc-inventec-transformers.dts
@@ -0,0 +1,486 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+// Copyright 2021 Inventec Corp.
+
+/dts-v1/;
+
+#include "aspeed-g6.dtsi"
+#include "aspeed-g6-pinctrl.dtsi"
+#include <dt-bindings/i2c/i2c.h>
+#include <dt-bindings/gpio/aspeed-gpio.h>
+
+/ {
+ model = "TRANSFORMERS BMC";
+ compatible = "inventec,transformer-bmc", "aspeed,ast2600";
+
+ aliases {
+ serial4 = &uart5;
+ };
+
+ chosen {
+ stdout-path = &uart5;
+ bootargs = "console=tty0 console=ttyS4,115200n8 root=/dev/ram rw init=/linuxrc";
+ };
+
+ memory at 80000000 {
+ device_type = "memory";
+ reg = <0x80000000 0x80000000>;
+ };
+
+ reserved-memory {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+
+ gfx_memory: framebuffer {
+ size = <0x01000000>;
+ alignment = <0x01000000>;
+ compatible = "shared-dma-pool";
+ reusable;
+ };
+
+ video_engine_memory: video {
+ size = <0x04000000>;
+ alignment = <0x01000000>;
+ compatible = "shared-dma-pool";
+ reusable;
+ };
+
+ ssp_memory: ssp_memory {
+ size = <0x00200000>;
+ alignment = <0x00100000>;
+ compatible = "shared-dma-pool";
+ no-map;
+ };
+ };
+
+ iio-hwmon {
+ compatible = "iio-hwmon";
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ // UID led
+ uid {
+ label = "UID_LED";
+ gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>;
+ };
+
+ // Heart beat led
+ heartbeat {
+ label = "HB_LED";
+ gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>;
+ };
+ };
+
+ pwm_tacho {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_tach0_default
+ &pinctrl_pwm1_default &pinctrl_tach1_default
+ &pinctrl_pwm2_default &pinctrl_tach2_default
+ &pinctrl_pwm3_default &pinctrl_tach3_default
+ &pinctrl_pwm4_default &pinctrl_tach4_default
+ &pinctrl_pwm5_default &pinctrl_tach5_default
+ &pinctrl_pwm6_default &pinctrl_tach6_default
+ &pinctrl_pwm7_default &pinctrl_tach7_default
+ &pinctrl_tach8_default
+ &pinctrl_tach9_default
+ &pinctrl_tach10_default
+ &pinctrl_tach11_default
+ &pinctrl_tach12_default
+ &pinctrl_tach13_default
+ &pinctrl_tach14_default
+ &pinctrl_tach15_default>;
+ fan at 0 {
+ reg = <0x00>;
+ aspeed,target_pwm = <25000>;
+ cooling-levels = <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = <0x00>;
+ aspeed,min_rpm = <750000>;
+ };
+
+ fan at 1 {
+ reg = <0x01>;
+ aspeed,target_pwm = <25000>;
+ cooling-levels = <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = <0x01>;
+ aspeed,min_rpm = <750000>;
+ };
+
+ fan at 2 {
+ reg = <0x02>;
+ aspeed,target_pwm = <25000>;
+ cooling-levels = <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = <0x02>;
+ aspeed,min_rpm = <750000>;
+ };
+
+ fan at 3 {
+ reg = <0x03>;
+ aspeed,target_pwm = <25000>;
+ cooling-levels = <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = <0x03>;
+ aspeed,min_rpm = <750000>;
+ };
+
+ fan at 4 {
+ reg = <0x04>;
+ aspeed,target_pwm = <25000>;
+ cooling-levels = <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = <0x04>;
+ aspeed,min_rpm = <750000>;
+ };
+
+ fan at 5 {
+ reg = <0x05>;
+ aspeed,target_pwm = <25000>;
+ cooling-levels = <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = <0x05>;
+ aspeed,min_rpm = <750000>;
+ };
+
+ fan at 6 {
+ reg = <0x06>;
+ aspeed,target_pwm = <25000>;
+ cooling-levels = <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = <0x06>;
+ aspeed,min_rpm = <750000>;
+ };
+
+ fan at 7 {
+ reg = <0x07>;
+ aspeed,target_pwm = <25000>;
+ cooling-levels = <125 151 177 203 229 255>;
+ aspeed,fan-tach-ch = <0x07>;
+ aspeed,min_rpm = <750000>;
+ };
+
+ fan at 8 {
+ reg = <0x08>;
+ aspeed,fan-tach-ch = <0x08>;
+ };
+
+ fan at 9 {
+ reg = <0x09>;
+ aspeed,fan-tach-ch = <0x09>;
+ };
+
+ fan at 10 {
+ reg = <0x0a>;
+ aspeed,fan-tach-ch = <0x0a>;
+ };
+
+ fan at 11 {
+ reg = <0x0b>;
+ aspeed,fan-tach-ch = <0x0b>;
+ };
+
+ fan at 12 {
+ reg = <0x0c>;
+ aspeed,fan-tach-ch = <0x0c>;
+ };
+
+ fan at 13 {
+ reg = <0x0d>;
+ aspeed,fan-tach-ch = <0x0d>;
+ };
+
+ fan at 14 {
+ reg = <0x0e>;
+ aspeed,fan-tach-ch = <0x0e>;
+ };
+
+ fan at 15 {
+ reg = <0x0f>;
+ aspeed,fan-tach-ch = <0x0f>;
+ };
+ };
+};
+
+&mdio0 {
+ status = "okay";
+
+ ethphy0: ethernet-phy at 0 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <1>;
+ };
+};
+
+&mac3 {
+ status = "okay";
+ phy-mode = "rgmii";
+ phy-handle = <ðphy0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_rgmii4_default>;
+};
+
+&fmc {
+ status = "okay";
+
+ flash at 0 {
+ status = "okay";
+ m25p,fast-read;
+ label = "bmc";
+ spi-max-frequency = <33000000>;
+ spi-tx-bus-width = <2>;
+ spi-rx-bus-width = <2>;
+#include "openbmc-flash-layout.dtsi"
+ };
+
+ flash at 1 {
+ status = "okay";
+ m25p,fast-read;
+ label = "bmc2";
+ spi-max-frequency = <33000000>;
+ spi-tx-bus-width = <2>;
+ spi-rx-bus-width = <2>;
+ };
+};
+
+&spi1 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_spi1_default>;
+
+ flash at 0 {
+ status = "okay";
+ m25p,fast-read;
+ label = "bios";
+ spi-max-frequency = <33000000>;
+ spi-tx-bus-width = <1>;
+ spi-rx-bus-width = <1>;
+ };
+};
+
+&wdt1 {
+ status = "okay";
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&uart5 {
+ status = "okay";
+};
+
+&i2c0 {
+ status = "okay";
+
+ //Set bmc' slave address;
+ bmc_slave at 10 {
+ compatible = "ipmb-dev";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ i2c-protocol;
+ };
+};
+
+&i2c2 {
+ status = "okay";
+};
+
+&i2c3 {
+ // FRU AT24C512C-SSHM-T
+ status = "okay";
+ eeprom at 50 {
+ compatible = "atmel,24c512";
+ reg = <0x50>;
+ pagesize = <128>;
+ };
+};
+
+&i2c5 {
+ status = "okay";
+};
+
+&i2c6 {
+ status = "okay";
+
+ tmp75 at 49 {
+ compatible = "ti,tmp75";
+ reg = <0x49>;
+ };
+
+ tmp75 at 4f {
+ compatible = "ti,tmp75";
+ reg = <0x4f>;
+ };
+
+ tmp468 at 48 {
+ compatible = "ti,tmp468";
+ reg = <0x48>;
+ };
+};
+
+&i2c7 {
+ status = "okay";
+ adm1278 at 40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+
+&i2c8 {
+ // FRU AT24C512C-SSHM-T
+ status = "okay";
+
+ eeprom at 51 {
+ compatible = "atmel,24c512";
+ reg = <0x51>;
+ pagesize = <128>;
+ };
+
+ eeprom at 53 {
+ compatible = "atmel,24c512";
+ reg = <0x53>;
+ pagesize = <128>;
+ };
+};
+
+&i2c9 {
+ // M.2
+ status = "okay";
+};
+
+&i2c10 {
+ // I2C EXPANDER
+ status = "okay";
+
+ i2c-switch at 71 {
+ compatible = "nxp,pca9544";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x71>;
+ };
+
+ i2c-switch at 73 {
+ compatible = "nxp,pca9544";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x73>;
+ };
+};
+
+&i2c11 {
+ // I2C EXPANDER
+ status = "okay";
+
+ i2c-switch at 70 {
+ compatible = "nxp,pca9544";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x70>;
+
+ pcie_eeprom_riser1: i2c at 0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+
+ eeprom at 55 {
+ compatible = "atmel,24c512";
+ reg = <0x55>;
+ pagesize = <128>;
+ };
+ };
+
+ pcie_eeprom_riser2: i2c at 1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <1>;
+
+ eeprom at 55 {
+ compatible = "atmel,24c512";
+ reg = <0x55>;
+ pagesize = <128>;
+ };
+ };
+
+ pcie_eeprom_riser3: i2c at 2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <2>;
+
+ eeprom at 55 {
+ compatible = "atmel,24c512";
+ reg = <0x55>;
+ pagesize = <128>;
+ };
+ };
+ };
+};
+
+&i2c12 {
+ status = "okay";
+
+ psu0:psu0 at 58 {
+ compatible = "pmbus";
+ reg = <0x58>;
+ };
+};
+
+&gpio0 {
+ status = "okay";
+ gpio-line-names =
+ /*A0-A7*/ "","","","","","","","",
+ /*B0-B7*/ "I2C_HSC_ALERT","BMC_READY","","","","","PSU1_ALERT","",
+ /*C0-C7*/ "","","","","","","","",
+ /*D0-D7*/ "","","","","","","","",
+ /*E0-E7*/ "","","","","","","","",
+ /*F0-F7*/ "","","","","RST_BMC_SGPIO","","","",
+ /*G0-G7*/ "","","JTAG_MUX_SEL","","","","","",
+ /*H0-H7*/ "","","","","RESET_OUT","POWER_OUT","","",
+ /*I0-I7*/ "","","","","","","NMI_OUT","",
+ /*J0-J7*/ "","","","","","","","",
+ /*K0-K7*/ "","","","","","","","",
+ /*L0-L7*/ "","","","","","","","",
+ /*M0-M7*/ "","","","","","","","",
+ /*N0-N7*/ "","","","","","","","",
+ /*O0-O7*/ "","","","","","","","",
+ /*P0-P7*/ "","","","TCK_MUX_SEL","BMC_ASD_JTAG_EN","","PREQ_N","",
+ /*Q0-Q7*/ "","","","","","","","",
+ /*R0-R7*/ "","","","","","","","",
+ /*S0-S7*/ "","","","","","","PCH_THERMTRIP","",
+ /*T0-T7*/ "","","","","","","","",
+ /*U0-U7*/ "","NMI_BUTTON","","","","","","",
+ /*V0-V7*/ "","","","","PS_PWROK","","","PRDY_N",
+ /*W0-W7*/ "","","","","","","","",
+ /*X0-X7*/ "","","","CPLD_CATERR","","","","",
+ /*Y0-Y7*/ "","","","","","","","",
+ /*Z0-Z7*/ "","","","","","","","",
+ /*AA0-AA7*/ "","","","","","","","",
+ /*AB0-AB7*/ "","","","","","","","",
+ /*AC0-AC7*/ "","","","","","","","";
+};
+
+&lpc_snoop {
+ status = "okay";
+ snoop-ports = <0x80>;
+};
+
+&emmc_controller {
+ status = "okay";
+ timing-phase = <0x700FF>;
+};
+
+&emmc {
+ status = "okay";
+
+ non-removable;
+ max-frequency = <52000000>;
+ sdhci-drive-type = /bits/ 8 <3>;
+ bus-width = <8>;
+};
+
+&vhub {
+ status = "okay";
+ aspeed,vhub-downstream-ports = <7>;
+ aspeed,vhub-generic-endpoints = <21>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_usb2ad_default>;
+};
+
+&rtc {
+ status = "okay";
+};
--
2.33.0
More information about the openbmc
mailing list