Add linux device tree entry related to
Yosemite 4 specific devices connected to BMC SoC.
Changelog:
v8 - Add description of Yosemite 4
- Remove unsupported ncsi config
- Revise i2c-mux config
- Correct power sensor i2c address
- Restore i2c 11 bus-frequency to default
v7 - Revise changelog format
v6 - Change project name from yosemitev4 to yosemite4
v5 - Revise rtc setting
- Remove duplicated multi-master setting
v4 - Resend with cover letter
v3 - Revise the bootargs to stdout-path
- Revise i2c devices
v2 - Revise the DTS node name
v1 - Add binding document
Delphine CC Chiu (2):
dt-bindings: arm: aspeed: add Facebook Yosemite 4 board
ARM: dts: aspeed: yosemite4: add Facebook Yosemite 4 BMC
.../bindings/arm/aspeed/aspeed.yaml | 1 +
arch/arm/boot/dts/aspeed/Makefile | 1 +
.../aspeed/aspeed-bmc-facebook-yosemite4.dts | 627 ++++++++++++++++++
3 files changed, 629 insertions(+)
create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
--
2.25.1
Document the new compatibles used on Facebook Yosemite 4.
Signed-off-by: Delphine CC Chiu <[email protected]>
Acked-by: Krzysztof Kozlowski <[email protected]>
---
Changelog:
v7 - Revise changelog format
v6 - Change project name from yosemitev4 to yosemite4
---
Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml b/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml
index e0eff4c05879..23ee325bfed0 100644
--- a/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml
+++ b/Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml
@@ -79,6 +79,7 @@ properties:
- facebook,elbert-bmc
- facebook,fuji-bmc
- facebook,greatlakes-bmc
+ - facebook,yosemite4-bmc
- ibm,everest-bmc
- ibm,rainier-bmc
- ibm,tacoma-bmc
--
2.25.1
On Thu, 10 Aug 2023 11:44:18 +0800, Delphine CC Chiu wrote:
> Document the new compatibles used on Facebook Yosemite 4.
>
> Signed-off-by: Delphine CC Chiu <[email protected]>
> Acked-by: Krzysztof Kozlowski <[email protected]>
> ---
> Changelog:
> v7 - Revise changelog format
> v6 - Change project name from yosemitev4 to yosemite4
> ---
> Documentation/devicetree/bindings/arm/aspeed/aspeed.yaml | 1 +
> 1 file changed, 1 insertion(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/[email protected]
The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.
If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:
pip3 install dtschema --upgrade
Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
Add linux device tree entry for Yosemite 4 devices connected to BMC.
The Yosemite 4 is a Meta multi-node server platform, based on AST2600 SoC.
Signed-off-by: Delphine CC Chiu <[email protected]>
---
Changelog:
v8 - Add description of Yosemite 4
- Remove unsupported ncsi config
- Revise i2c-mux config
- Correct power sensor i2c address
- Restore i2c 11 bus-frequency to default
v7 - Revise changelog format
v6 - Change project name from yosemitev4 to yosemite4
v5 - Revise rtc setting
- Remove duplicated multi-master setting
v3 - Revise the bootargs to stdout-path
- Revise i2c devices
v2 - Revise the DTS node name
---
arch/arm/boot/dts/aspeed/Makefile | 1 +
.../aspeed/aspeed-bmc-facebook-yosemite4.dts | 627 ++++++++++++++++++
2 files changed, 628 insertions(+)
create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile
index c68984322a86..5b9264b823f3 100644
--- a/arch/arm/boot/dts/aspeed/Makefile
+++ b/arch/arm/boot/dts/aspeed/Makefile
@@ -26,6 +26,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
aspeed-bmc-facebook-wedge400.dtb \
aspeed-bmc-facebook-yamp.dtb \
aspeed-bmc-facebook-yosemitev2.dtb \
+ aspeed-bmc-facebook-yosemite4.dtb \
aspeed-bmc-ibm-bonnell.dtb \
aspeed-bmc-ibm-everest.dtb \
aspeed-bmc-ibm-rainier.dtb \
diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
new file mode 100644
index 000000000000..cb64417564bb
--- /dev/null
+++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
@@ -0,0 +1,627 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+// Copyright 2022 Facebook Inc.
+
+/dts-v1/;
+#include "aspeed-g6.dtsi"
+#include <dt-bindings/gpio/aspeed-gpio.h>
+#include <dt-bindings/leds/leds-pca955x.h>
+#include <dt-bindings/i2c/i2c.h>
+
+/ {
+ model = "Facebook Yosemite 4 BMC";
+ compatible = "facebook,yosemite4-bmc", "aspeed,ast2600";
+
+ aliases {
+ serial4 = &uart5;
+ serial5 = &uart6;
+ serial6 = &uart7;
+ serial7 = &uart8;
+ serial8 = &uart9;
+ };
+
+ chosen {
+ stdout-path = "serial4:57600n8";
+ };
+
+ memory@80000000 {
+ device_type = "memory";
+ reg = <0x80000000 0x80000000>;
+ };
+
+ iio-hwmon {
+ compatible = "iio-hwmon";
+ io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
+ <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
+ <&adc1 0>, <&adc1 1>;
+ };
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&uart2 {
+ status = "okay";
+};
+
+&uart3 {
+ status = "okay";
+};
+
+&uart4 {
+ status = "okay";
+};
+
+&uart5 {
+ status = "okay";
+};
+
+&uart6 {
+ status = "okay";
+};
+
+&uart7 {
+ status = "okay";
+};
+
+&uart8 {
+ status = "okay";
+};
+
+&uart9 {
+ status = "okay";
+};
+
+&wdt1 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_wdtrst1_default>;
+ aspeed,reset-type = "soc";
+ aspeed,external-signal;
+ aspeed,ext-push-pull;
+ aspeed,ext-active-high;
+ aspeed,ext-pulse-duration = <256>;
+};
+
+&mac2 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_rmii3_default>;
+ no-hw-checksum;
+ use-ncsi;
+ mlx,multi-host;
+};
+
+&mac3 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_rmii4_default>;
+ no-hw-checksum;
+ use-ncsi;
+ mlx,multi-host;
+};
+
+&fmc {
+ status = "okay";
+ flash@0 {
+ status = "okay";
+ m25p,fast-read;
+ label = "bmc";
+ spi-rx-bus-width = <4>;
+ spi-max-frequency = <50000000>;
+#include "openbmc-flash-layout-64.dtsi"
+ };
+ flash@1 {
+ status = "okay";
+ m25p,fast-read;
+ label = "bmc2";
+ spi-rx-bus-width = <4>;
+ spi-max-frequency = <50000000>;
+ };
+};
+
+&i2c0 {
+ status = "okay";
+ mctp-controller;
+ bus-frequency = <400000>;
+ multi-master;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ power-sensor@40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+&i2c1 {
+ status = "okay";
+ mctp-controller;
+ bus-frequency = <400000>;
+ multi-master;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ power-sensor@40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+&i2c2 {
+ status = "okay";
+ mctp-controller;
+ bus-frequency = <400000>;
+ multi-master;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ power-sensor@40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+&i2c3 {
+ status = "okay";
+ mctp-controller;
+ bus-frequency = <400000>;
+ multi-master;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ power-sensor@40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+&i2c4 {
+ status = "okay";
+ mctp-controller;
+ bus-frequency = <400000>;
+ multi-master;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ power-sensor@40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+&i2c5 {
+ status = "okay";
+ mctp-controller;
+ bus-frequency = <400000>;
+ multi-master;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ power-sensor@40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+&i2c6 {
+ status = "okay";
+ mctp-controller;
+ bus-frequency = <400000>;
+ multi-master;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ power-sensor@40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+&i2c7 {
+ status = "okay";
+ mctp-controller;
+ bus-frequency = <400000>;
+ multi-master;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ power-sensor@40 {
+ compatible = "adi,adm1278";
+ reg = <0x40>;
+ };
+};
+
+&i2c8 {
+ status = "okay";
+ bus-frequency = <400000>;
+ i2c-mux@70 {
+ compatible = "nxp,pca9544";
+ idle-state = <0>;
+ i2c-mux-idle-disconnect;
+ reg = <0x70>;
+ };
+};
+
+&i2c9 {
+ status = "okay";
+ bus-frequency = <400000>;
+ i2c-mux@71 {
+ compatible = "nxp,pca9544";
+ idle-state = <0>;
+ i2c-mux-idle-disconnect;
+ reg = <0x71>;
+ };
+};
+
+&i2c10 {
+ status = "okay";
+ bus-frequency = <400000>;
+};
+
+&i2c11 {
+ status = "okay";
+ bus-frequency = <400000>;
+ power-sensor@10 {
+ compatible = "adi, adm1272";
+ reg = <0x10>;
+ };
+
+ power-sensor@12 {
+ compatible = "adi, adm1272";
+ reg = <0x12>;
+ };
+
+ gpio@20 {
+ compatible = "nxp,pca9555";
+ reg = <0x20>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+
+ gpio@21 {
+ compatible = "nxp,pca9555";
+ reg = <0x21>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+
+ gpio@22 {
+ compatible = "nxp,pca9555";
+ reg = <0x22>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+
+ gpio@23 {
+ compatible = "nxp,pca9555";
+ reg = <0x23>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+
+ temperature-sensor@48 {
+ compatible = "ti,tmp75";
+ reg = <0x48>;
+ };
+
+ temperature-sensor@49 {
+ compatible = "ti,tmp75";
+ reg = <0x49>;
+ };
+
+ temperature-sensor@4a {
+ compatible = "ti,tmp75";
+ reg = <0x4a>;
+ };
+
+ temperature-sensor@4b {
+ compatible = "ti,tmp75";
+ reg = <0x4b>;
+ };
+
+ eeprom@54 {
+ compatible = "atmel,24c256";
+ reg = <0x54>;
+ };
+};
+
+&i2c12 {
+ status = "okay";
+ bus-frequency = <400000>;
+
+ temperature-sensor@48 {
+ compatible = "ti,tmp75";
+ reg = <0x48>;
+ };
+
+ eeprom@50 {
+ compatible = "atmel,24c128";
+ reg = <0x50>;
+ };
+
+ rtc@6f {
+ compatible = "nuvoton,nct3018y";
+ reg = <0x6f>;
+ };
+};
+
+&i2c13 {
+ status = "okay";
+ bus-frequency = <400000>;
+};
+
+&i2c14 {
+ status = "okay";
+ bus-frequency = <400000>;
+ adc@1d {
+ compatible = "ti,adc128d818";
+ reg = <0x1d>;
+ ti,mode = /bits/ 8 <2>;
+ };
+
+ adc@35 {
+ compatible = "ti,adc128d818";
+ reg = <0x35>;
+ ti,mode = /bits/ 8 <2>;
+ };
+
+ adc@37 {
+ compatible = "ti,adc128d818";
+ reg = <0x37>;
+ ti,mode = /bits/ 8 <2>;
+ };
+
+ power-sensor@40 {
+ compatible = "ti,ina230";
+ reg = <0x40>;
+ };
+
+ power-sensor@41 {
+ compatible = "ti,ina230";
+ reg = <0x41>;
+ };
+
+ power-sensor@42 {
+ compatible = "ti,ina230";
+ reg = <0x42>;
+ };
+
+ power-sensor@43 {
+ compatible = "ti,ina230";
+ reg = <0x43>;
+ };
+
+ power-sensor@44 {
+ compatible = "ti,ina230";
+ reg = <0x44>;
+ };
+
+ temperature-sensor@4e {
+ compatible = "ti,tmp75";
+ reg = <0x4e>;
+ };
+
+ temperature-sensor@4f {
+ compatible = "ti,tmp75";
+ reg = <0x4f>;
+ };
+
+ eeprom@51 {
+ compatible = "atmel,24c128";
+ reg = <0x51>;
+ };
+
+ i2c-mux@71 {
+ compatible = "nxp,pca9846";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ idle-state = <0>;
+ i2c-mux-idle-disconnect;
+ reg = <0x71>;
+
+ i2c@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+
+ adc@1f {
+ compatible = "ti,adc128d818";
+ reg = <0x1f>;
+ ti,mode = /bits/ 8 <2>;
+ };
+
+ pwm@20{
+ compatible = "max31790";
+ reg = <0x20>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ gpio@22{
+ compatible = "ti,tca6424";
+ reg = <0x22>;
+ };
+
+ pwm@23{
+ compatible = "max31790";
+ reg = <0x23>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ adc@33 {
+ compatible = "maxim,max11615";
+ reg = <0x33>;
+ };
+
+ eeprom@52 {
+ compatible = "atmel,24c128";
+ reg = <0x52>;
+ };
+
+ gpio@61 {
+ compatible = "nxp,pca9552";
+ reg = <0x61>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+ };
+
+ i2c@1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+
+ adc@1f {
+ compatible = "ti,adc128d818";
+ reg = <0x1f>;
+ ti,mode = /bits/ 8 <2>;
+ };
+
+ pwm@20{
+ compatible = "max31790";
+ reg = <0x20>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ gpio@22{
+ compatible = "ti,tca6424";
+ reg = <0x22>;
+ };
+
+ pwm@23{
+ compatible = "max31790";
+ reg = <0x23>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ adc@33 {
+ compatible = "maxim,max11615";
+ reg = <0x33>;
+ };
+
+ eeprom@52 {
+ compatible = "atmel,24c128";
+ reg = <0x52>;
+ };
+
+ gpio@61 {
+ compatible = "nxp,pca9552";
+ reg = <0x61>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+ };
+ };
+
+ i2c-mux@73 {
+ compatible = "nxp,pca9544";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ idle-state = <0>;
+ i2c-mux-idle-disconnect;
+ reg = <0x73>;
+
+ i2c@0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+
+ adc@35 {
+ compatible = "maxim,max11617";
+ reg = <0x35>;
+ };
+ };
+
+ i2c@1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0>;
+
+ adc@35 {
+ compatible = "maxim,max11617";
+ reg = <0x35>;
+ };
+ };
+ };
+};
+
+&i2c15 {
+ status = "okay";
+ mctp-controller;
+ multi-master;
+ bus-frequency = <400000>;
+
+ mctp@10 {
+ compatible = "mctp-i2c-controller";
+ reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
+ };
+
+ i2c-mux@72 {
+ compatible = "nxp,pca9544";
+ idle-state = <0>;
+ i2c-mux-idle-disconnect;
+ reg = <0x72>;
+ };
+};
+
+&adc0 {
+ ref_voltage = <2500>;
+ status = "okay";
+ pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
+ &pinctrl_adc2_default &pinctrl_adc3_default
+ &pinctrl_adc4_default &pinctrl_adc5_default
+ &pinctrl_adc6_default &pinctrl_adc7_default>;
+};
+
+&adc1 {
+ ref_voltage = <2500>;
+ status = "okay";
+ pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default>;
+};
+
+
+&ehci0 {
+ status = "okay";
+};
+
+&ehci1 {
+ status = "okay";
+};
+
+&uhci {
+ status = "okay";
+};
--
2.25.1
On Thu, 10 Aug 2023 at 03:44, Delphine CC Chiu
<[email protected]> wrote:
>
> Add linux device tree entry for Yosemite 4 devices connected to BMC.
> The Yosemite 4 is a Meta multi-node server platform, based on AST2600 SoC.
>
> Signed-off-by: Delphine CC Chiu <[email protected]>
> ---
> Changelog:
> v8 - Add description of Yosemite 4
> - Remove unsupported ncsi config
> - Revise i2c-mux config
> - Correct power sensor i2c address
> - Restore i2c 11 bus-frequency to default
> v7 - Revise changelog format
> v6 - Change project name from yosemitev4 to yosemite4
> v5 - Revise rtc setting
> - Remove duplicated multi-master setting
> v3 - Revise the bootargs to stdout-path
> - Revise i2c devices
> v2 - Revise the DTS node name
> ---
> arch/arm/boot/dts/aspeed/Makefile | 1 +
> .../aspeed/aspeed-bmc-facebook-yosemite4.dts | 627 ++++++++++++++++++
> 2 files changed, 628 insertions(+)
> create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
>
> diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile
> index c68984322a86..5b9264b823f3 100644
> --- a/arch/arm/boot/dts/aspeed/Makefile
> +++ b/arch/arm/boot/dts/aspeed/Makefile
> @@ -26,6 +26,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
> aspeed-bmc-facebook-wedge400.dtb \
> aspeed-bmc-facebook-yamp.dtb \
> aspeed-bmc-facebook-yosemitev2.dtb \
> + aspeed-bmc-facebook-yosemite4.dtb \
> aspeed-bmc-ibm-bonnell.dtb \
> aspeed-bmc-ibm-everest.dtb \
> aspeed-bmc-ibm-rainier.dtb \
> diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
> new file mode 100644
> index 000000000000..cb64417564bb
> --- /dev/null
> +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
> @@ -0,0 +1,627 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later
> +// Copyright 2022 Facebook Inc.
> +
> +/dts-v1/;
> +#include "aspeed-g6.dtsi"
> +#include <dt-bindings/gpio/aspeed-gpio.h>
> +#include <dt-bindings/leds/leds-pca955x.h>
> +#include <dt-bindings/i2c/i2c.h>
> +
> +/ {
> + model = "Facebook Yosemite 4 BMC";
> + compatible = "facebook,yosemite4-bmc", "aspeed,ast2600";
> +
> + aliases {
> + serial4 = &uart5;
> + serial5 = &uart6;
> + serial6 = &uart7;
> + serial7 = &uart8;
> + serial8 = &uart9;
> + };
> +
> + chosen {
> + stdout-path = "serial4:57600n8";
> + };
> +
> + memory@80000000 {
> + device_type = "memory";
> + reg = <0x80000000 0x80000000>;
> + };
> +
> + iio-hwmon {
> + compatible = "iio-hwmon";
> + io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
> + <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
> + <&adc1 0>, <&adc1 1>;
> + };
> +};
> +
> +&uart1 {
> + status = "okay";
> +};
> +
> +&uart2 {
> + status = "okay";
> +};
> +
> +&uart3 {
> + status = "okay";
> +};
> +
> +&uart4 {
> + status = "okay";
> +};
> +
> +&uart5 {
> + status = "okay";
> +};
> +
> +&uart6 {
> + status = "okay";
> +};
> +
> +&uart7 {
> + status = "okay";
> +};
> +
> +&uart8 {
> + status = "okay";
> +};
> +
> +&uart9 {
> + status = "okay";
> +};
> +
> +&wdt1 {
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_wdtrst1_default>;
> + aspeed,reset-type = "soc";
> + aspeed,external-signal;
> + aspeed,ext-push-pull;
> + aspeed,ext-active-high;
> + aspeed,ext-pulse-duration = <256>;
> +};
> +
> +&mac2 {
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_rmii3_default>;
> + no-hw-checksum;
Are you sure you need to set no-hw-checksum?
The driver when running on an ast2600 already disables tx hw checksum
if ncsi is enabled:
/* AST2600 tx checksum with NCSI is broken */
if (priv->use_ncsi && of_device_is_compatible(np, "aspeed,ast2600-mac"))
netdev->hw_features &= ~NETIF_F_HW_CSUM;
The rest of the patch looks good.
Reviewed-by: Joel Stanley <[email protected]>
Cheers,
Joel
> + use-ncsi;
> + mlx,multi-host;
> +};
> +
> +&mac3 {
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_rmii4_default>;
> + no-hw-checksum;
> + use-ncsi;
> + mlx,multi-host;
> +};
> +
> +&fmc {
> + status = "okay";
> + flash@0 {
> + status = "okay";
> + m25p,fast-read;
> + label = "bmc";
> + spi-rx-bus-width = <4>;
> + spi-max-frequency = <50000000>;
> +#include "openbmc-flash-layout-64.dtsi"
> + };
> + flash@1 {
> + status = "okay";
> + m25p,fast-read;
> + label = "bmc2";
> + spi-rx-bus-width = <4>;
> + spi-max-frequency = <50000000>;
> + };
> +};
> +
> +&i2c0 {
> + status = "okay";
> + mctp-controller;
> + bus-frequency = <400000>;
> + multi-master;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + power-sensor@40 {
> + compatible = "adi,adm1278";
> + reg = <0x40>;
> + };
> +};
> +
> +&i2c1 {
> + status = "okay";
> + mctp-controller;
> + bus-frequency = <400000>;
> + multi-master;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + power-sensor@40 {
> + compatible = "adi,adm1278";
> + reg = <0x40>;
> + };
> +};
> +
> +&i2c2 {
> + status = "okay";
> + mctp-controller;
> + bus-frequency = <400000>;
> + multi-master;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + power-sensor@40 {
> + compatible = "adi,adm1278";
> + reg = <0x40>;
> + };
> +};
> +
> +&i2c3 {
> + status = "okay";
> + mctp-controller;
> + bus-frequency = <400000>;
> + multi-master;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + power-sensor@40 {
> + compatible = "adi,adm1278";
> + reg = <0x40>;
> + };
> +};
> +
> +&i2c4 {
> + status = "okay";
> + mctp-controller;
> + bus-frequency = <400000>;
> + multi-master;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + power-sensor@40 {
> + compatible = "adi,adm1278";
> + reg = <0x40>;
> + };
> +};
> +
> +&i2c5 {
> + status = "okay";
> + mctp-controller;
> + bus-frequency = <400000>;
> + multi-master;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + power-sensor@40 {
> + compatible = "adi,adm1278";
> + reg = <0x40>;
> + };
> +};
> +
> +&i2c6 {
> + status = "okay";
> + mctp-controller;
> + bus-frequency = <400000>;
> + multi-master;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + power-sensor@40 {
> + compatible = "adi,adm1278";
> + reg = <0x40>;
> + };
> +};
> +
> +&i2c7 {
> + status = "okay";
> + mctp-controller;
> + bus-frequency = <400000>;
> + multi-master;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + power-sensor@40 {
> + compatible = "adi,adm1278";
> + reg = <0x40>;
> + };
> +};
> +
> +&i2c8 {
> + status = "okay";
> + bus-frequency = <400000>;
> + i2c-mux@70 {
> + compatible = "nxp,pca9544";
> + idle-state = <0>;
> + i2c-mux-idle-disconnect;
> + reg = <0x70>;
> + };
> +};
> +
> +&i2c9 {
> + status = "okay";
> + bus-frequency = <400000>;
> + i2c-mux@71 {
> + compatible = "nxp,pca9544";
> + idle-state = <0>;
> + i2c-mux-idle-disconnect;
> + reg = <0x71>;
> + };
> +};
> +
> +&i2c10 {
> + status = "okay";
> + bus-frequency = <400000>;
> +};
> +
> +&i2c11 {
> + status = "okay";
> + bus-frequency = <400000>;
> + power-sensor@10 {
> + compatible = "adi, adm1272";
> + reg = <0x10>;
> + };
> +
> + power-sensor@12 {
> + compatible = "adi, adm1272";
> + reg = <0x12>;
> + };
> +
> + gpio@20 {
> + compatible = "nxp,pca9555";
> + reg = <0x20>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + gpio@21 {
> + compatible = "nxp,pca9555";
> + reg = <0x21>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + gpio@22 {
> + compatible = "nxp,pca9555";
> + reg = <0x22>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + gpio@23 {
> + compatible = "nxp,pca9555";
> + reg = <0x23>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + temperature-sensor@48 {
> + compatible = "ti,tmp75";
> + reg = <0x48>;
> + };
> +
> + temperature-sensor@49 {
> + compatible = "ti,tmp75";
> + reg = <0x49>;
> + };
> +
> + temperature-sensor@4a {
> + compatible = "ti,tmp75";
> + reg = <0x4a>;
> + };
> +
> + temperature-sensor@4b {
> + compatible = "ti,tmp75";
> + reg = <0x4b>;
> + };
> +
> + eeprom@54 {
> + compatible = "atmel,24c256";
> + reg = <0x54>;
> + };
> +};
> +
> +&i2c12 {
> + status = "okay";
> + bus-frequency = <400000>;
> +
> + temperature-sensor@48 {
> + compatible = "ti,tmp75";
> + reg = <0x48>;
> + };
> +
> + eeprom@50 {
> + compatible = "atmel,24c128";
> + reg = <0x50>;
> + };
> +
> + rtc@6f {
> + compatible = "nuvoton,nct3018y";
> + reg = <0x6f>;
> + };
> +};
> +
> +&i2c13 {
> + status = "okay";
> + bus-frequency = <400000>;
> +};
> +
> +&i2c14 {
> + status = "okay";
> + bus-frequency = <400000>;
> + adc@1d {
> + compatible = "ti,adc128d818";
> + reg = <0x1d>;
> + ti,mode = /bits/ 8 <2>;
> + };
> +
> + adc@35 {
> + compatible = "ti,adc128d818";
> + reg = <0x35>;
> + ti,mode = /bits/ 8 <2>;
> + };
> +
> + adc@37 {
> + compatible = "ti,adc128d818";
> + reg = <0x37>;
> + ti,mode = /bits/ 8 <2>;
> + };
> +
> + power-sensor@40 {
> + compatible = "ti,ina230";
> + reg = <0x40>;
> + };
> +
> + power-sensor@41 {
> + compatible = "ti,ina230";
> + reg = <0x41>;
> + };
> +
> + power-sensor@42 {
> + compatible = "ti,ina230";
> + reg = <0x42>;
> + };
> +
> + power-sensor@43 {
> + compatible = "ti,ina230";
> + reg = <0x43>;
> + };
> +
> + power-sensor@44 {
> + compatible = "ti,ina230";
> + reg = <0x44>;
> + };
> +
> + temperature-sensor@4e {
> + compatible = "ti,tmp75";
> + reg = <0x4e>;
> + };
> +
> + temperature-sensor@4f {
> + compatible = "ti,tmp75";
> + reg = <0x4f>;
> + };
> +
> + eeprom@51 {
> + compatible = "atmel,24c128";
> + reg = <0x51>;
> + };
> +
> + i2c-mux@71 {
> + compatible = "nxp,pca9846";
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + idle-state = <0>;
> + i2c-mux-idle-disconnect;
> + reg = <0x71>;
> +
> + i2c@0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> +
> + adc@1f {
> + compatible = "ti,adc128d818";
> + reg = <0x1f>;
> + ti,mode = /bits/ 8 <2>;
> + };
> +
> + pwm@20{
> + compatible = "max31790";
> + reg = <0x20>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + gpio@22{
> + compatible = "ti,tca6424";
> + reg = <0x22>;
> + };
> +
> + pwm@23{
> + compatible = "max31790";
> + reg = <0x23>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + adc@33 {
> + compatible = "maxim,max11615";
> + reg = <0x33>;
> + };
> +
> + eeprom@52 {
> + compatible = "atmel,24c128";
> + reg = <0x52>;
> + };
> +
> + gpio@61 {
> + compatible = "nxp,pca9552";
> + reg = <0x61>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> + };
> +
> + i2c@1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> +
> + adc@1f {
> + compatible = "ti,adc128d818";
> + reg = <0x1f>;
> + ti,mode = /bits/ 8 <2>;
> + };
> +
> + pwm@20{
> + compatible = "max31790";
> + reg = <0x20>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + gpio@22{
> + compatible = "ti,tca6424";
> + reg = <0x22>;
> + };
> +
> + pwm@23{
> + compatible = "max31790";
> + reg = <0x23>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + adc@33 {
> + compatible = "maxim,max11615";
> + reg = <0x33>;
> + };
> +
> + eeprom@52 {
> + compatible = "atmel,24c128";
> + reg = <0x52>;
> + };
> +
> + gpio@61 {
> + compatible = "nxp,pca9552";
> + reg = <0x61>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> + };
> + };
> +
> + i2c-mux@73 {
> + compatible = "nxp,pca9544";
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + idle-state = <0>;
> + i2c-mux-idle-disconnect;
> + reg = <0x73>;
> +
> + i2c@0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> +
> + adc@35 {
> + compatible = "maxim,max11617";
> + reg = <0x35>;
> + };
> + };
> +
> + i2c@1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> +
> + adc@35 {
> + compatible = "maxim,max11617";
> + reg = <0x35>;
> + };
> + };
> + };
> +};
> +
> +&i2c15 {
> + status = "okay";
> + mctp-controller;
> + multi-master;
> + bus-frequency = <400000>;
> +
> + mctp@10 {
> + compatible = "mctp-i2c-controller";
> + reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
> + };
> +
> + i2c-mux@72 {
> + compatible = "nxp,pca9544";
> + idle-state = <0>;
> + i2c-mux-idle-disconnect;
> + reg = <0x72>;
> + };
> +};
> +
> +&adc0 {
> + ref_voltage = <2500>;
> + status = "okay";
> + pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
> + &pinctrl_adc2_default &pinctrl_adc3_default
> + &pinctrl_adc4_default &pinctrl_adc5_default
> + &pinctrl_adc6_default &pinctrl_adc7_default>;
> +};
> +
> +&adc1 {
> + ref_voltage = <2500>;
> + status = "okay";
> + pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default>;
> +};
> +
> +
> +&ehci0 {
> + status = "okay";
> +};
> +
> +&ehci1 {
> + status = "okay";
> +};
> +
> +&uhci {
> + status = "okay";
> +};
> --
> 2.25.1
>