ARM: dts: aspeed: Add HXT StarDragon 4800 REP2 BMC

Message ID 1536805516-21484-1-git-send-email-yao.yuan@linaro.org
State New
Headers show
Series
  • ARM: dts: aspeed: Add HXT StarDragon 4800 REP2 BMC
Related show

Commit Message

Yao Yuan Sept. 13, 2018, 2:25 a.m.
The HXT StarDragon 4800 REP2 (Reference Evaluation Platform) is
an aarch64 ARMv8 server platform with an ast2520 BMC.

Signed-off-by: Yuan Yao <yao.yuan@linaro.org>
---
 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 arch/arm/boot/dts/Makefile                         |   1 +
 .../dts/aspeed-bmc-arm-stardragon4800-rep2.dts     | 207 +++++++++++++++++++++
 3 files changed, 209 insertions(+)
 create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts

Comments

Joel Stanley Sept. 13, 2018, 3:01 a.m. | #1
On Thu, 13 Sep 2018 at 11:55, Yuan Yao <yao.yuan@linaro.org> wrote:
>
> The HXT StarDragon 4800 REP2 (Reference Evaluation Platform) is
> an aarch64 ARMv8 server platform with an ast2520 BMC.
>
> Signed-off-by: Yuan Yao <yao.yuan@linaro.org>

Looks good. I will apply it to the Aspeed tree in a few days, after
giving others a chance to review.

Out of interest, are you planning on running OpenBMC on this platform?

Cheers,

Joel

> ---
>  .../devicetree/bindings/vendor-prefixes.txt        |   1 +
>  arch/arm/boot/dts/Makefile                         |   1 +
>  .../dts/aspeed-bmc-arm-stardragon4800-rep2.dts     | 207 +++++++++++++++++++++
>  3 files changed, 209 insertions(+)
>  create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
>
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
> index 2c3fc51..c65c0c1 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> @@ -165,6 +165,7 @@ honeywell   Honeywell
>  hp     Hewlett Packard
>  holtek Holtek Semiconductor, Inc.
>  hwacom HwaCom Systems Inc.
> +hxt            Huaxintong Semiconductor Technology Co., Ltd.
>  i2se   I2SE GmbH
>  ibm    International Business Machines (IBM)
>  idt    Integrated Device Technologies, Inc.
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index b5bd3de..a1b8816 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -1199,6 +1199,7 @@ dtb-$(CONFIG_ARCH_ZX) += zx296702-ad1.dtb
>  dtb-$(CONFIG_ARCH_ASPEED) += \
>         aspeed-ast2500-evb.dtb \
>         aspeed-bmc-arm-centriq2400-rep.dtb \
> +       aspeed-bmc-arm-stardragon4800-rep2.dtb \
>         aspeed-bmc-intel-s2600wf.dtb \
>         aspeed-bmc-opp-lanyang.dtb \
>         aspeed-bmc-opp-palmetto.dtb \
> diff --git a/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
> new file mode 100644
> index 0000000..83335c0
> --- /dev/null
> +++ b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
> @@ -0,0 +1,207 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/dts-v1/;
> +
> +#include "aspeed-g5.dtsi"
> +#include <dt-bindings/gpio/aspeed-gpio.h>
> +
> +/ {
> +       model = "HXT StarDragon 4800 REP2 AST2520";
> +       compatible = "hxt,stardragon4800-rep2-bmc", "aspeed,ast2500";
> +
> +       chosen {
> +               stdout-path = &uart5;
> +               bootargs = "console=ttyS4,115200 earlyprintk";
> +       };
> +
> +       memory {
> +               reg = <0x80000000 0x40000000>;
> +       };
> +
> +       iio-hwmon {
> +               compatible = "iio-hwmon";
> +               io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
> +                                               <&adc 4>, <&adc 5>, <&adc 6>, <&adc 8>;
> +       };
> +
> +       iio-hwmon-battery {
> +               compatible = "iio-hwmon";
> +               io-channels = <&adc 7>;
> +       };
> +
> +       leds {
> +               compatible = "gpio-leds";
> +
> +               system_fault1 {
> +                       label = "System_fault1";
> +                       gpios = <&gpio ASPEED_GPIO(I, 3) GPIO_ACTIVE_LOW>;
> +               };
> +
> +               system_fault2 {
> +                       label = "System_fault2";
> +                       gpios = <&gpio ASPEED_GPIO(I, 2) GPIO_ACTIVE_LOW>;
> +               };
> +       };
> +};
> +
> +&fmc {
> +       status = "okay";
> +       flash@0 {
> +               status = "okay";
> +               m25p,fast-read;
> +               label = "bmc";
> +#include "openbmc-flash-layout.dtsi"
> +       };
> +};
> +
> +&spi1 {
> +       status = "okay";
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&pinctrl_spi1_default>;
> +       flash@0 {
> +               status = "okay";
> +       };
> +};
> +
> +&spi2 {
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&pinctrl_spi2ck_default
> +                       &pinctrl_spi2miso_default
> +                       &pinctrl_spi2mosi_default
> +                       &pinctrl_spi2cs0_default>;
> +};
> +
> +&uart3 {
> +       status = "okay";
> +
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&pinctrl_txd3_default &pinctrl_rxd3_default>;
> +       current-speed = <115200>;
> +};
> +
> +&uart5 {
> +       status = "okay";
> +};
> +
> +&mac0 {
> +       status = "okay";
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&pinctrl_rgmii1_default &pinctrl_mdio1_default>;
> +};
> +
> +&mac1 {
> +       status = "okay";
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&pinctrl_rmii2_default>;
> +       use-ncsi;
> +};
> +
> +&i2c0 {
> +       status = "okay";
> +};
> +
> +&i2c1 {
> +       status = "okay";
> +
> +       tmp421@1e {
> +               compatible = "ti,tmp421";
> +               reg = <0x1e>;
> +       };
> +       tmp421@2a {
> +               compatible = "ti,tmp421";
> +               reg = <0x2a>;
> +       };
> +       tmp421@1c {
> +               compatible = "ti,tmp421";
> +               reg = <0x1c>;
> +       };
> +};
> +
> +&i2c2 {
> +       status = "okay";
> +};
> +
> +&i2c3 {
> +       status = "okay";
> +};
> +
> +&i2c4 {
> +       status = "okay";
> +};
> +
> +&i2c5 {
> +       status = "okay";
> +};
> +
> +&i2c6 {
> +       status = "okay";
> +
> +       tmp421@1f {
> +               compatible = "ti,tmp421";
> +               reg = <0x1f>;
> +       };
> +       nvt210@4c {
> +               compatible = "nvt210";
> +               reg = <0x4c>;
> +       };
> +       eeprom@50 {
> +               compatible = "atmel,24c128";
> +               reg = <0x50>;
> +               pagesize = <128>;
> +       };
> +};
> +
> +&i2c7 {
> +       status = "okay";
> +};
> +
> +&i2c8 {
> +       status = "okay";
> +
> +       pca9641@70 {
> +               compatible = "nxp,pca9641";
> +               reg = <0x70>;
> +               i2c-arb {
> +                       #address-cells = <1>;
> +                       #size-cells = <0>;
> +                       eeprom@50 {
> +                               compatible = "atmel,24c02";
> +                               reg = <0x50>;
> +                       };
> +                       dps650ab@58 {
> +                               compatible = "dps650ab";
> +                               reg = <0x58>;
> +                       };
> +               };
> +       };
> +};
> +
> +&i2c9 {
> +       status = "okay";
> +};
> +
> +&vuart {
> +       status = "okay";
> +};
> +
> +&gfx {
> +       status = "okay";
> +};
> +
> +&pinctrl {
> +       aspeed,external-nodes = <&gfx &lhc>;
> +};
> +
> +&gpio {
> +       pin_gpio_c7 {
> +               gpio-hog;
> +               gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
> +               output-low;
> +               line-name = "BIOS_SPI_MUX_S";
> +       };
> +       pin_gpio_d1 {
> +               gpio-hog;
> +               gpios = <ASPEED_GPIO(D, 1) GPIO_ACTIVE_HIGH>;
> +               output-high;
> +               line-name = "PHY2_RESET_N";
> +       };
> +};
> --
> 1.8.3.1
>
Yao Yuan Sept. 13, 2018, 6:02 a.m. | #2
On 13 September 2018 at 11:01, Joel Stanley <joel@jms.id.au> wrote:

> On Thu, 13 Sep 2018 at 11:55, Yuan Yao <yao.yuan@linaro.org> wrote:
> >
> > The HXT StarDragon 4800 REP2 (Reference Evaluation Platform) is
> > an aarch64 ARMv8 server platform with an ast2520 BMC.
> >
> > Signed-off-by: Yuan Yao <yao.yuan@linaro.org>
>
> Looks good. I will apply it to the Aspeed tree in a few days, after
> giving others a chance to review.
>
> Out of interest, are you planning on running OpenBMC on this platform?
>

Hi Joel,

Thanks for your work.

Yes, I will running OpenBMC on this platform.
And In fact, the OpenBMC basic startup is already running on REP2.
I'm also trying to push the OpenBMC patch for this platform.


>
> Cheers,


> Joel
>
> > ---
> >  .../devicetree/bindings/vendor-prefixes.txt        |   1 +
> >  arch/arm/boot/dts/Makefile                         |   1 +
> >  .../dts/aspeed-bmc-arm-stardragon4800-rep2.dts     | 207
> +++++++++++++++++++++
> >  3 files changed, 209 insertions(+)
> >  create mode 100644 arch/arm/boot/dts/aspeed-bmc-
> arm-stardragon4800-rep2.dts
> >
> > diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt
> b/Documentation/devicetree/bindings/vendor-prefixes.txt
> > index 2c3fc51..c65c0c1 100644
> > --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> > +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> > @@ -165,6 +165,7 @@ honeywell   Honeywell
> >  hp     Hewlett Packard
> >  holtek Holtek Semiconductor, Inc.
> >  hwacom HwaCom Systems Inc.
> > +hxt            Huaxintong Semiconductor Technology Co., Ltd.
> >  i2se   I2SE GmbH
> >  ibm    International Business Machines (IBM)
> >  idt    Integrated Device Technologies, Inc.
> > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> > index b5bd3de..a1b8816 100644
> > --- a/arch/arm/boot/dts/Makefile
> > +++ b/arch/arm/boot/dts/Makefile
> > @@ -1199,6 +1199,7 @@ dtb-$(CONFIG_ARCH_ZX) += zx296702-ad1.dtb
> >  dtb-$(CONFIG_ARCH_ASPEED) += \
> >         aspeed-ast2500-evb.dtb \
> >         aspeed-bmc-arm-centriq2400-rep.dtb \
> > +       aspeed-bmc-arm-stardragon4800-rep2.dtb \
> >         aspeed-bmc-intel-s2600wf.dtb \
> >         aspeed-bmc-opp-lanyang.dtb \
> >         aspeed-bmc-opp-palmetto.dtb \
> > diff --git a/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
> b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
> > new file mode 100644
> > index 0000000..83335c0
> > --- /dev/null
> > +++ b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
> > @@ -0,0 +1,207 @@
> > +// SPDX-License-Identifier: GPL-2.0+
> > +/dts-v1/;
> > +
> > +#include "aspeed-g5.dtsi"
> > +#include <dt-bindings/gpio/aspeed-gpio.h>
> > +
> > +/ {
> > +       model = "HXT StarDragon 4800 REP2 AST2520";
> > +       compatible = "hxt,stardragon4800-rep2-bmc", "aspeed,ast2500";
> > +
> > +       chosen {
> > +               stdout-path = &uart5;
> > +               bootargs = "console=ttyS4,115200 earlyprintk";
> > +       };
> > +
> > +       memory {
> > +               reg = <0x80000000 0x40000000>;
> > +       };
> > +
> > +       iio-hwmon {
> > +               compatible = "iio-hwmon";
> > +               io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
> > +                                               <&adc 4>, <&adc 5>,
> <&adc 6>, <&adc 8>;
> > +       };
> > +
> > +       iio-hwmon-battery {
> > +               compatible = "iio-hwmon";
> > +               io-channels = <&adc 7>;
> > +       };
> > +
> > +       leds {
> > +               compatible = "gpio-leds";
> > +
> > +               system_fault1 {
> > +                       label = "System_fault1";
> > +                       gpios = <&gpio ASPEED_GPIO(I, 3)
> GPIO_ACTIVE_LOW>;
> > +               };
> > +
> > +               system_fault2 {
> > +                       label = "System_fault2";
> > +                       gpios = <&gpio ASPEED_GPIO(I, 2)
> GPIO_ACTIVE_LOW>;
> > +               };
> > +       };
> > +};
> > +
> > +&fmc {
> > +       status = "okay";
> > +       flash@0 {
> > +               status = "okay";
> > +               m25p,fast-read;
> > +               label = "bmc";
> > +#include "openbmc-flash-layout.dtsi"
> > +       };
> > +};
> > +
> > +&spi1 {
> > +       status = "okay";
> > +       pinctrl-names = "default";
> > +       pinctrl-0 = <&pinctrl_spi1_default>;
> > +       flash@0 {
> > +               status = "okay";
> > +       };
> > +};
> > +
> > +&spi2 {
> > +       pinctrl-names = "default";
> > +       pinctrl-0 = <&pinctrl_spi2ck_default
> > +                       &pinctrl_spi2miso_default
> > +                       &pinctrl_spi2mosi_default
> > +                       &pinctrl_spi2cs0_default>;
> > +};
> > +
> > +&uart3 {
> > +       status = "okay";
> > +
> > +       pinctrl-names = "default";
> > +       pinctrl-0 = <&pinctrl_txd3_default &pinctrl_rxd3_default>;
> > +       current-speed = <115200>;
> > +};
> > +
> > +&uart5 {
> > +       status = "okay";
> > +};
> > +
> > +&mac0 {
> > +       status = "okay";
> > +       pinctrl-names = "default";
> > +       pinctrl-0 = <&pinctrl_rgmii1_default &pinctrl_mdio1_default>;
> > +};
> > +
> > +&mac1 {
> > +       status = "okay";
> > +       pinctrl-names = "default";
> > +       pinctrl-0 = <&pinctrl_rmii2_default>;
> > +       use-ncsi;
> > +};
> > +
> > +&i2c0 {
> > +       status = "okay";
> > +};
> > +
> > +&i2c1 {
> > +       status = "okay";
> > +
> > +       tmp421@1e {
> > +               compatible = "ti,tmp421";
> > +               reg = <0x1e>;
> > +       };
> > +       tmp421@2a {
> > +               compatible = "ti,tmp421";
> > +               reg = <0x2a>;
> > +       };
> > +       tmp421@1c {
> > +               compatible = "ti,tmp421";
> > +               reg = <0x1c>;
> > +       };
> > +};
> > +
> > +&i2c2 {
> > +       status = "okay";
> > +};
> > +
> > +&i2c3 {
> > +       status = "okay";
> > +};
> > +
> > +&i2c4 {
> > +       status = "okay";
> > +};
> > +
> > +&i2c5 {
> > +       status = "okay";
> > +};
> > +
> > +&i2c6 {
> > +       status = "okay";
> > +
> > +       tmp421@1f {
> > +               compatible = "ti,tmp421";
> > +               reg = <0x1f>;
> > +       };
> > +       nvt210@4c {
> > +               compatible = "nvt210";
> > +               reg = <0x4c>;
> > +       };
> > +       eeprom@50 {
> > +               compatible = "atmel,24c128";
> > +               reg = <0x50>;
> > +               pagesize = <128>;
> > +       };
> > +};
> > +
> > +&i2c7 {
> > +       status = "okay";
> > +};
> > +
> > +&i2c8 {
> > +       status = "okay";
> > +
> > +       pca9641@70 {
> > +               compatible = "nxp,pca9641";
> > +               reg = <0x70>;
> > +               i2c-arb {
> > +                       #address-cells = <1>;
> > +                       #size-cells = <0>;
> > +                       eeprom@50 {
> > +                               compatible = "atmel,24c02";
> > +                               reg = <0x50>;
> > +                       };
> > +                       dps650ab@58 {
> > +                               compatible = "dps650ab";
> > +                               reg = <0x58>;
> > +                       };
> > +               };
> > +       };
> > +};
> > +
> > +&i2c9 {
> > +       status = "okay";
> > +};
> > +
> > +&vuart {
> > +       status = "okay";
> > +};
> > +
> > +&gfx {
> > +       status = "okay";
> > +};
> > +
> > +&pinctrl {
> > +       aspeed,external-nodes = <&gfx &lhc>;
> > +};
> > +
> > +&gpio {
> > +       pin_gpio_c7 {
> > +               gpio-hog;
> > +               gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
> > +               output-low;
> > +               line-name = "BIOS_SPI_MUX_S";
> > +       };
> > +       pin_gpio_d1 {
> > +               gpio-hog;
> > +               gpios = <ASPEED_GPIO(D, 1) GPIO_ACTIVE_HIGH>;
> > +               output-high;
> > +               line-name = "PHY2_RESET_N";
> > +       };
> > +};
> > --
> > 1.8.3.1
> >
>
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 13 September 2018 at 11:01, Joel Stanley <span dir="ltr">&lt;<a href="mailto:joel@jms.id.au" target="_blank">joel@jms.id.au</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Thu, 13 Sep 2018 at 11:55, Yuan Yao &lt;<a href="mailto:yao.yuan@linaro.org">yao.yuan@linaro.org</a>&gt; wrote:<br>
&gt;<br>
&gt; The HXT StarDragon 4800 REP2 (Reference Evaluation Platform) is<br>
&gt; an aarch64 ARMv8 server platform with an ast2520 BMC.<br>
&gt;<br>
&gt; Signed-off-by: Yuan Yao &lt;<a href="mailto:yao.yuan@linaro.org">yao.yuan@linaro.org</a>&gt;<br>
<br>
</span>Looks good. I will apply it to the Aspeed tree in a few days, after<br>
giving others a chance to review.<br>
<br>
Out of interest, are you planning on running OpenBMC on this platform?<br></blockquote><div><br></div><div>Hi Joel,</div><div><br></div><div>Thanks for your work.<br></div><div><br></div><div>Yes, I will running OpenBMC on this platform.</div><div>And In fact, the OpenBMC basic startup is already running on REP2.</div><div>I&#39;m also trying to push the OpenBMC patch for this 
platform.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Cheers, </blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Joel<br>
<div class="HOEnZb"><div class="h5"><br>
&gt; ---<br>
&gt;  .../devicetree/bindings/<wbr>vendor-prefixes.txt        |   1 +<br>
&gt;  arch/arm/boot/dts/Makefile                         |   1 +<br>
&gt;  .../dts/aspeed-bmc-arm-<wbr>stardragon4800-rep2.dts     | 207 +++++++++++++++++++++<br>
&gt;  3 files changed, 209 insertions(+)<br>
&gt;  create mode 100644 arch/arm/boot/dts/aspeed-bmc-<wbr>arm-stardragon4800-rep2.dts<br>
&gt;<br>
&gt; diff --git a/Documentation/devicetree/<wbr>bindings/vendor-prefixes.txt b/Documentation/devicetree/<wbr>bindings/vendor-prefixes.txt<br>
&gt; index 2c3fc51..c65c0c1 100644<br>
&gt; --- a/Documentation/devicetree/<wbr>bindings/vendor-prefixes.txt<br>
&gt; +++ b/Documentation/devicetree/<wbr>bindings/vendor-prefixes.txt<br>
&gt; @@ -165,6 +165,7 @@ honeywell   Honeywell<br>
&gt;  hp     Hewlett Packard<br>
&gt;  holtek Holtek Semiconductor, Inc.<br>
&gt;  hwacom HwaCom Systems Inc.<br>
&gt; +hxt            Huaxintong Semiconductor Technology Co., Ltd.<br>
&gt;  i2se   I2SE GmbH<br>
&gt;  ibm    International Business Machines (IBM)<br>
&gt;  idt    Integrated Device Technologies, Inc.<br>
&gt; diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile<br>
&gt; index b5bd3de..a1b8816 100644<br>
&gt; --- a/arch/arm/boot/dts/Makefile<br>
&gt; +++ b/arch/arm/boot/dts/Makefile<br>
&gt; @@ -1199,6 +1199,7 @@ dtb-$(CONFIG_ARCH_ZX) += zx296702-ad1.dtb<br>
&gt;  dtb-$(CONFIG_ARCH_ASPEED) += \<br>
&gt;         aspeed-ast2500-evb.dtb \<br>
&gt;         aspeed-bmc-arm-centriq2400-<wbr>rep.dtb \<br>
&gt; +       aspeed-bmc-arm-stardragon4800-<wbr>rep2.dtb \<br>
&gt;         aspeed-bmc-intel-s2600wf.dtb \<br>
&gt;         aspeed-bmc-opp-lanyang.dtb \<br>
&gt;         aspeed-bmc-opp-palmetto.dtb \<br>
&gt; diff --git a/arch/arm/boot/dts/aspeed-<wbr>bmc-arm-stardragon4800-rep2.<wbr>dts b/arch/arm/boot/dts/aspeed-<wbr>bmc-arm-stardragon4800-rep2.<wbr>dts<br>
&gt; new file mode 100644<br>
&gt; index 0000000..83335c0<br>
&gt; --- /dev/null<br>
&gt; +++ b/arch/arm/boot/dts/aspeed-<wbr>bmc-arm-stardragon4800-rep2.<wbr>dts<br>
&gt; @@ -0,0 +1,207 @@<br>
&gt; +// SPDX-License-Identifier: GPL-2.0+<br>
&gt; +/dts-v1/;<br>
&gt; +<br>
&gt; +#include &quot;aspeed-g5.dtsi&quot;<br>
&gt; +#include &lt;dt-bindings/gpio/aspeed-gpio.<wbr>h&gt;<br>
&gt; +<br>
&gt; +/ {<br>
&gt; +       model = &quot;HXT StarDragon 4800 REP2 AST2520&quot;;<br>
&gt; +       compatible = &quot;hxt,stardragon4800-rep2-bmc&quot;, &quot;aspeed,ast2500&quot;;<br>
&gt; +<br>
&gt; +       chosen {<br>
&gt; +               stdout-path = &amp;uart5;<br>
&gt; +               bootargs = &quot;console=ttyS4,115200 earlyprintk&quot;;<br>
&gt; +       };<br>
&gt; +<br>
&gt; +       memory {<br>
&gt; +               reg = &lt;0x80000000 0x40000000&gt;;<br>
&gt; +       };<br>
&gt; +<br>
&gt; +       iio-hwmon {<br>
&gt; +               compatible = &quot;iio-hwmon&quot;;<br>
&gt; +               io-channels = &lt;&amp;adc 0&gt;, &lt;&amp;adc 1&gt;, &lt;&amp;adc 2&gt;, &lt;&amp;adc 3&gt;,<br>
&gt; +                                               &lt;&amp;adc 4&gt;, &lt;&amp;adc 5&gt;, &lt;&amp;adc 6&gt;, &lt;&amp;adc 8&gt;;<br>
&gt; +       };<br>
&gt; +<br>
&gt; +       iio-hwmon-battery {<br>
&gt; +               compatible = &quot;iio-hwmon&quot;;<br>
&gt; +               io-channels = &lt;&amp;adc 7&gt;;<br>
&gt; +       };<br>
&gt; +<br>
&gt; +       leds {<br>
&gt; +               compatible = &quot;gpio-leds&quot;;<br>
&gt; +<br>
&gt; +               system_fault1 {<br>
&gt; +                       label = &quot;System_fault1&quot;;<br>
&gt; +                       gpios = &lt;&amp;gpio ASPEED_GPIO(I, 3) GPIO_ACTIVE_LOW&gt;;<br>
&gt; +               };<br>
&gt; +<br>
&gt; +               system_fault2 {<br>
&gt; +                       label = &quot;System_fault2&quot;;<br>
&gt; +                       gpios = &lt;&amp;gpio ASPEED_GPIO(I, 2) GPIO_ACTIVE_LOW&gt;;<br>
&gt; +               };<br>
&gt; +       };<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;fmc {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +       flash@0 {<br>
&gt; +               status = &quot;okay&quot;;<br>
&gt; +               m25p,fast-read;<br>
&gt; +               label = &quot;bmc&quot;;<br>
&gt; +#include &quot;openbmc-flash-layout.dtsi&quot;<br>
&gt; +       };<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;spi1 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +       pinctrl-names = &quot;default&quot;;<br>
&gt; +       pinctrl-0 = &lt;&amp;pinctrl_spi1_default&gt;;<br>
&gt; +       flash@0 {<br>
&gt; +               status = &quot;okay&quot;;<br>
&gt; +       };<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;spi2 {<br>
&gt; +       pinctrl-names = &quot;default&quot;;<br>
&gt; +       pinctrl-0 = &lt;&amp;pinctrl_spi2ck_default<br>
&gt; +                       &amp;pinctrl_spi2miso_default<br>
&gt; +                       &amp;pinctrl_spi2mosi_default<br>
&gt; +                       &amp;pinctrl_spi2cs0_default&gt;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;uart3 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +<br>
&gt; +       pinctrl-names = &quot;default&quot;;<br>
&gt; +       pinctrl-0 = &lt;&amp;pinctrl_txd3_default &amp;pinctrl_rxd3_default&gt;;<br>
&gt; +       current-speed = &lt;115200&gt;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;uart5 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;mac0 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +       pinctrl-names = &quot;default&quot;;<br>
&gt; +       pinctrl-0 = &lt;&amp;pinctrl_rgmii1_default &amp;pinctrl_mdio1_default&gt;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;mac1 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +       pinctrl-names = &quot;default&quot;;<br>
&gt; +       pinctrl-0 = &lt;&amp;pinctrl_rmii2_default&gt;;<br>
&gt; +       use-ncsi;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c0 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c1 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +<br>
&gt; +       tmp421@1e {<br>
&gt; +               compatible = &quot;ti,tmp421&quot;;<br>
&gt; +               reg = &lt;0x1e&gt;;<br>
&gt; +       };<br>
&gt; +       tmp421@2a {<br>
&gt; +               compatible = &quot;ti,tmp421&quot;;<br>
&gt; +               reg = &lt;0x2a&gt;;<br>
&gt; +       };<br>
&gt; +       tmp421@1c {<br>
&gt; +               compatible = &quot;ti,tmp421&quot;;<br>
&gt; +               reg = &lt;0x1c&gt;;<br>
&gt; +       };<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c2 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c3 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c4 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c5 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c6 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +<br>
&gt; +       tmp421@1f {<br>
&gt; +               compatible = &quot;ti,tmp421&quot;;<br>
&gt; +               reg = &lt;0x1f&gt;;<br>
&gt; +       };<br>
&gt; +       nvt210@4c {<br>
&gt; +               compatible = &quot;nvt210&quot;;<br>
&gt; +               reg = &lt;0x4c&gt;;<br>
&gt; +       };<br>
&gt; +       eeprom@50 {<br>
&gt; +               compatible = &quot;atmel,24c128&quot;;<br>
&gt; +               reg = &lt;0x50&gt;;<br>
&gt; +               pagesize = &lt;128&gt;;<br>
&gt; +       };<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c7 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c8 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +<br>
&gt; +       pca9641@70 {<br>
&gt; +               compatible = &quot;nxp,pca9641&quot;;<br>
&gt; +               reg = &lt;0x70&gt;;<br>
&gt; +               i2c-arb {<br>
&gt; +                       #address-cells = &lt;1&gt;;<br>
&gt; +                       #size-cells = &lt;0&gt;;<br>
&gt; +                       eeprom@50 {<br>
&gt; +                               compatible = &quot;atmel,24c02&quot;;<br>
&gt; +                               reg = &lt;0x50&gt;;<br>
&gt; +                       };<br>
&gt; +                       dps650ab@58 {<br>
&gt; +                               compatible = &quot;dps650ab&quot;;<br>
&gt; +                               reg = &lt;0x58&gt;;<br>
&gt; +                       };<br>
&gt; +               };<br>
&gt; +       };<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;i2c9 {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;vuart {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;gfx {<br>
&gt; +       status = &quot;okay&quot;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;pinctrl {<br>
&gt; +       aspeed,external-nodes = &lt;&amp;gfx &amp;lhc&gt;;<br>
&gt; +};<br>
&gt; +<br>
&gt; +&amp;gpio {<br>
&gt; +       pin_gpio_c7 {<br>
&gt; +               gpio-hog;<br>
&gt; +               gpios = &lt;ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH&gt;;<br>
&gt; +               output-low;<br>
&gt; +               line-name = &quot;BIOS_SPI_MUX_S&quot;;<br>
&gt; +       };<br>
&gt; +       pin_gpio_d1 {<br>
&gt; +               gpio-hog;<br>
&gt; +               gpios = &lt;ASPEED_GPIO(D, 1) GPIO_ACTIVE_HIGH&gt;;<br>
&gt; +               output-high;<br>
&gt; +               line-name = &quot;PHY2_RESET_N&quot;;<br>
&gt; +       };<br>
&gt; +};<br>
&gt; --<br>
&gt; 1.8.3.1<br>
&gt;<br>
</div></div></blockquote></div><br></div></div>
Yao Yuan Sept. 13, 2018, 6:06 a.m. | #3
On 13 September 2018 at 11:01, Joel Stanley <joel@jms.id.au> wrote:
> On Thu, 13 Sep 2018 at 11:55, Yuan Yao <yao.yuan@linaro.org> wrote:
>>
>> The HXT StarDragon 4800 REP2 (Reference Evaluation Platform) is
>> an aarch64 ARMv8 server platform with an ast2520 BMC.
>>
>> Signed-off-by: Yuan Yao <yao.yuan@linaro.org>
>
> Looks good. I will apply it to the Aspeed tree in a few days, after
> giving others a chance to review.
>
> Out of interest, are you planning on running OpenBMC on this platform?

Hi Joel,

Thanks for your work.

Yes, I will running OpenBMC on this platform.
And In fact, the OpenBMC basic startup is already running on REP2.
I'm also trying to push the OpenBMC patch for this platform.


> Cheers,
>
> Joel
>
>> ---
>>  .../devicetree/bindings/vendor-prefixes.txt        |   1 +
>>  arch/arm/boot/dts/Makefile                         |   1 +
>>  .../dts/aspeed-bmc-arm-stardragon4800-rep2.dts     | 207 +++++++++++++++++++++
>>  3 files changed, 209 insertions(+)
>>  create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
>>
>> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
>> index 2c3fc51..c65c0c1 100644
>> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
>> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
>> @@ -165,6 +165,7 @@ honeywell   Honeywell
>>  hp     Hewlett Packard
>>  holtek Holtek Semiconductor, Inc.
>>  hwacom HwaCom Systems Inc.
>> +hxt            Huaxintong Semiconductor Technology Co., Ltd.
>>  i2se   I2SE GmbH
>>  ibm    International Business Machines (IBM)
>>  idt    Integrated Device Technologies, Inc.
>> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>> index b5bd3de..a1b8816 100644
>> --- a/arch/arm/boot/dts/Makefile
>> +++ b/arch/arm/boot/dts/Makefile
>> @@ -1199,6 +1199,7 @@ dtb-$(CONFIG_ARCH_ZX) += zx296702-ad1.dtb
>>  dtb-$(CONFIG_ARCH_ASPEED) += \
>>         aspeed-ast2500-evb.dtb \
>>         aspeed-bmc-arm-centriq2400-rep.dtb \
>> +       aspeed-bmc-arm-stardragon4800-rep2.dtb \
>>         aspeed-bmc-intel-s2600wf.dtb \
>>         aspeed-bmc-opp-lanyang.dtb \
>>         aspeed-bmc-opp-palmetto.dtb \
>> diff --git a/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
>> new file mode 100644
>> index 0000000..83335c0
>> --- /dev/null
>> +++ b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
>> @@ -0,0 +1,207 @@
>> +// SPDX-License-Identifier: GPL-2.0+
>> +/dts-v1/;
>> +
>> +#include "aspeed-g5.dtsi"
>> +#include <dt-bindings/gpio/aspeed-gpio.h>
>> +
>> +/ {
>> +       model = "HXT StarDragon 4800 REP2 AST2520";
>> +       compatible = "hxt,stardragon4800-rep2-bmc", "aspeed,ast2500";
>> +
>> +       chosen {
>> +               stdout-path = &uart5;
>> +               bootargs = "console=ttyS4,115200 earlyprintk";
>> +       };
>> +
>> +       memory {
>> +               reg = <0x80000000 0x40000000>;
>> +       };
>> +
>> +       iio-hwmon {
>> +               compatible = "iio-hwmon";
>> +               io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
>> +                                               <&adc 4>, <&adc 5>, <&adc 6>, <&adc 8>;
>> +       };
>> +
>> +       iio-hwmon-battery {
>> +               compatible = "iio-hwmon";
>> +               io-channels = <&adc 7>;
>> +       };
>> +
>> +       leds {
>> +               compatible = "gpio-leds";
>> +
>> +               system_fault1 {
>> +                       label = "System_fault1";
>> +                       gpios = <&gpio ASPEED_GPIO(I, 3) GPIO_ACTIVE_LOW>;
>> +               };
>> +
>> +               system_fault2 {
>> +                       label = "System_fault2";
>> +                       gpios = <&gpio ASPEED_GPIO(I, 2) GPIO_ACTIVE_LOW>;
>> +               };
>> +       };
>> +};
>> +
>> +&fmc {
>> +       status = "okay";
>> +       flash@0 {
>> +               status = "okay";
>> +               m25p,fast-read;
>> +               label = "bmc";
>> +#include "openbmc-flash-layout.dtsi"
>> +       };
>> +};
>> +
>> +&spi1 {
>> +       status = "okay";
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_spi1_default>;
>> +       flash@0 {
>> +               status = "okay";
>> +       };
>> +};
>> +
>> +&spi2 {
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_spi2ck_default
>> +                       &pinctrl_spi2miso_default
>> +                       &pinctrl_spi2mosi_default
>> +                       &pinctrl_spi2cs0_default>;
>> +};
>> +
>> +&uart3 {
>> +       status = "okay";
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_txd3_default &pinctrl_rxd3_default>;
>> +       current-speed = <115200>;
>> +};
>> +
>> +&uart5 {
>> +       status = "okay";
>> +};
>> +
>> +&mac0 {
>> +       status = "okay";
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_rgmii1_default &pinctrl_mdio1_default>;
>> +};
>> +
>> +&mac1 {
>> +       status = "okay";
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_rmii2_default>;
>> +       use-ncsi;
>> +};
>> +
>> +&i2c0 {
>> +       status = "okay";
>> +};
>> +
>> +&i2c1 {
>> +       status = "okay";
>> +
>> +       tmp421@1e {
>> +               compatible = "ti,tmp421";
>> +               reg = <0x1e>;
>> +       };
>> +       tmp421@2a {
>> +               compatible = "ti,tmp421";
>> +               reg = <0x2a>;
>> +       };
>> +       tmp421@1c {
>> +               compatible = "ti,tmp421";
>> +               reg = <0x1c>;
>> +       };
>> +};
>> +
>> +&i2c2 {
>> +       status = "okay";
>> +};
>> +
>> +&i2c3 {
>> +       status = "okay";
>> +};
>> +
>> +&i2c4 {
>> +       status = "okay";
>> +};
>> +
>> +&i2c5 {
>> +       status = "okay";
>> +};
>> +
>> +&i2c6 {
>> +       status = "okay";
>> +
>> +       tmp421@1f {
>> +               compatible = "ti,tmp421";
>> +               reg = <0x1f>;
>> +       };
>> +       nvt210@4c {
>> +               compatible = "nvt210";
>> +               reg = <0x4c>;
>> +       };
>> +       eeprom@50 {
>> +               compatible = "atmel,24c128";
>> +               reg = <0x50>;
>> +               pagesize = <128>;
>> +       };
>> +};
>> +
>> +&i2c7 {
>> +       status = "okay";
>> +};
>> +
>> +&i2c8 {
>> +       status = "okay";
>> +
>> +       pca9641@70 {
>> +               compatible = "nxp,pca9641";
>> +               reg = <0x70>;
>> +               i2c-arb {
>> +                       #address-cells = <1>;
>> +                       #size-cells = <0>;
>> +                       eeprom@50 {
>> +                               compatible = "atmel,24c02";
>> +                               reg = <0x50>;
>> +                       };
>> +                       dps650ab@58 {
>> +                               compatible = "dps650ab";
>> +                               reg = <0x58>;
>> +                       };
>> +               };
>> +       };
>> +};
>> +
>> +&i2c9 {
>> +       status = "okay";
>> +};
>> +
>> +&vuart {
>> +       status = "okay";
>> +};
>> +
>> +&gfx {
>> +       status = "okay";
>> +};
>> +
>> +&pinctrl {
>> +       aspeed,external-nodes = <&gfx &lhc>;
>> +};
>> +
>> +&gpio {
>> +       pin_gpio_c7 {
>> +               gpio-hog;
>> +               gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
>> +               output-low;
>> +               line-name = "BIOS_SPI_MUX_S";
>> +       };
>> +       pin_gpio_d1 {
>> +               gpio-hog;
>> +               gpios = <ASPEED_GPIO(D, 1) GPIO_ACTIVE_HIGH>;
>> +               output-high;
>> +               line-name = "PHY2_RESET_N";
>> +       };
>> +};
>> --
>> 1.8.3.1
>>
Joel Stanley Sept. 20, 2018, 7:31 a.m. | #4
On Thu, 13 Sep 2018 at 15:32, Yao Yuan <yao.yuan@linaro.org> wrote:
>
> On 13 September 2018 at 11:01, Joel Stanley <joel@jms.id.au> wrote:
>>
>> > The HXT StarDragon 4800 REP2 (Reference Evaluation Platform) is
>> > an aarch64 ARMv8 server platform with an ast2520 BMC.
>> >
>> Looks good. I will apply it to the Aspeed tree in a few days, after
>> giving others a chance to review.
>>
>> Out of interest, are you planning on running OpenBMC on this platform?
>
>
> Yes, I will running OpenBMC on this platform.
> And In fact, the OpenBMC basic startup is already running on REP2.
> I'm also trying to push the OpenBMC patch for this platform.

Great!

>> >  .../devicetree/bindings/vendor-prefixes.txt        |   1 +
>> >  arch/arm/boot/dts/Makefile                         |   1 +
>> >  .../dts/aspeed-bmc-arm-stardragon4800-rep2.dts     | 207 +++++++++++++++++++++
>> >  3 files changed, 209 insertions(+)
>> >  create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
>> >
>> > diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
>> > index 2c3fc51..c65c0c1 100644
>> > --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
>> > +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
>> > @@ -165,6 +165,7 @@ honeywell   Honeywell
>> >  hp     Hewlett Packard
>> >  holtek Holtek Semiconductor, Inc.
>> >  hwacom HwaCom Systems Inc.
>> > +hxt            Huaxintong Semiconductor Technology Co., Ltd.
>> >  i2se   I2SE GmbH
>> >  ibm    International Business Machines (IBM)
>> >  idt    Integrated Device Technologies, Inc.

This part of the patch should go to the device tree mailing list in
it's own patch. That saves maintainers having to deal with conflicting
additions.

>> > diff --git a/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
>> > new file mode 100644
>> > index 0000000..83335c0
>> > --- /dev/null
>> > +++ b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
>> > @@ -0,0 +1,207 @@
>> > +// SPDX-License-Identifier: GPL-2.0+
>> > +/dts-v1/;
>> > +
>> > +#include "aspeed-g5.dtsi"
>> > +#include <dt-bindings/gpio/aspeed-gpio.h>
>> > +
>> > +/ {
>> > +       model = "HXT StarDragon 4800 REP2 AST2520";
>> > +       compatible = "hxt,stardragon4800-rep2-bmc", "aspeed,ast2500";
>> > +
>> > +       chosen {
>> > +               stdout-path = &uart5;
>> > +               bootargs = "console=ttyS4,115200 earlyprintk";
>> > +       };
>> > +
>> > +       memory {

When building with W=1:

  Warning (unit_address_vs_reg): /memory: node has a reg or ranges
property, but no unit name

It should instead look like this:

 memory@80000000 {

The rest looks good to me. I made the fix for you and applied this to
the aspeed v4.20 device tree branch.

I added the device tree maintainers to cc so they could take a look.
If any comments come up please address them in follow up patches.

Cheers,

Joel

>> > +               reg = <0x80000000 0x40000000>;
>> > +       };
>> > +
>> > +       iio-hwmon {
>> > +               compatible = "iio-hwmon";
>> > +               io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
>> > +                                               <&adc 4>, <&adc 5>, <&adc 6>, <&adc 8>;
>> > +       };
>> > +
>> > +       iio-hwmon-battery {
>> > +               compatible = "iio-hwmon";
>> > +               io-channels = <&adc 7>;
>> > +       };
>> > +
>> > +       leds {
>> > +               compatible = "gpio-leds";
>> > +
>> > +               system_fault1 {
>> > +                       label = "System_fault1";
>> > +                       gpios = <&gpio ASPEED_GPIO(I, 3) GPIO_ACTIVE_LOW>;
>> > +               };
>> > +
>> > +               system_fault2 {
>> > +                       label = "System_fault2";
>> > +                       gpios = <&gpio ASPEED_GPIO(I, 2) GPIO_ACTIVE_LOW>;
>> > +               };
>> > +       };
>> > +};
>> > +
>> > +&fmc {
>> > +       status = "okay";
>> > +       flash@0 {
>> > +               status = "okay";
>> > +               m25p,fast-read;
>> > +               label = "bmc";
>> > +#include "openbmc-flash-layout.dtsi"
>> > +       };
>> > +};
>> > +
>> > +&spi1 {
>> > +       status = "okay";
>> > +       pinctrl-names = "default";
>> > +       pinctrl-0 = <&pinctrl_spi1_default>;
>> > +       flash@0 {
>> > +               status = "okay";
>> > +       };
>> > +};
>> > +
>> > +&spi2 {
>> > +       pinctrl-names = "default";
>> > +       pinctrl-0 = <&pinctrl_spi2ck_default
>> > +                       &pinctrl_spi2miso_default
>> > +                       &pinctrl_spi2mosi_default
>> > +                       &pinctrl_spi2cs0_default>;
>> > +};
>> > +
>> > +&uart3 {
>> > +       status = "okay";
>> > +
>> > +       pinctrl-names = "default";
>> > +       pinctrl-0 = <&pinctrl_txd3_default &pinctrl_rxd3_default>;
>> > +       current-speed = <115200>;
>> > +};
>> > +
>> > +&uart5 {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&mac0 {
>> > +       status = "okay";
>> > +       pinctrl-names = "default";
>> > +       pinctrl-0 = <&pinctrl_rgmii1_default &pinctrl_mdio1_default>;
>> > +};
>> > +
>> > +&mac1 {
>> > +       status = "okay";
>> > +       pinctrl-names = "default";
>> > +       pinctrl-0 = <&pinctrl_rmii2_default>;
>> > +       use-ncsi;
>> > +};
>> > +
>> > +&i2c0 {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&i2c1 {
>> > +       status = "okay";
>> > +
>> > +       tmp421@1e {
>> > +               compatible = "ti,tmp421";
>> > +               reg = <0x1e>;
>> > +       };
>> > +       tmp421@2a {
>> > +               compatible = "ti,tmp421";
>> > +               reg = <0x2a>;
>> > +       };
>> > +       tmp421@1c {
>> > +               compatible = "ti,tmp421";
>> > +               reg = <0x1c>;
>> > +       };
>> > +};
>> > +
>> > +&i2c2 {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&i2c3 {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&i2c4 {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&i2c5 {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&i2c6 {
>> > +       status = "okay";
>> > +
>> > +       tmp421@1f {
>> > +               compatible = "ti,tmp421";
>> > +               reg = <0x1f>;
>> > +       };
>> > +       nvt210@4c {
>> > +               compatible = "nvt210";
>> > +               reg = <0x4c>;
>> > +       };
>> > +       eeprom@50 {
>> > +               compatible = "atmel,24c128";
>> > +               reg = <0x50>;
>> > +               pagesize = <128>;
>> > +       };
>> > +};
>> > +
>> > +&i2c7 {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&i2c8 {
>> > +       status = "okay";
>> > +
>> > +       pca9641@70 {
>> > +               compatible = "nxp,pca9641";
>> > +               reg = <0x70>;
>> > +               i2c-arb {
>> > +                       #address-cells = <1>;
>> > +                       #size-cells = <0>;
>> > +                       eeprom@50 {
>> > +                               compatible = "atmel,24c02";
>> > +                               reg = <0x50>;
>> > +                       };
>> > +                       dps650ab@58 {
>> > +                               compatible = "dps650ab";
>> > +                               reg = <0x58>;
>> > +                       };
>> > +               };
>> > +       };
>> > +};
>> > +
>> > +&i2c9 {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&vuart {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&gfx {
>> > +       status = "okay";
>> > +};
>> > +
>> > +&pinctrl {
>> > +       aspeed,external-nodes = <&gfx &lhc>;
>> > +};
>> > +
>> > +&gpio {
>> > +       pin_gpio_c7 {
>> > +               gpio-hog;
>> > +               gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
>> > +               output-low;
>> > +               line-name = "BIOS_SPI_MUX_S";
>> > +       };
>> > +       pin_gpio_d1 {
>> > +               gpio-hog;
>> > +               gpios = <ASPEED_GPIO(D, 1) GPIO_ACTIVE_HIGH>;
>> > +               output-high;
>> > +               line-name = "PHY2_RESET_N";
>> > +       };
>> > +};
>> > --
>> > 1.8.3.1
>> >
>
>

Patch

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 2c3fc51..c65c0c1 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -165,6 +165,7 @@  honeywell	Honeywell
 hp	Hewlett Packard
 holtek	Holtek Semiconductor, Inc.
 hwacom	HwaCom Systems Inc.
+hxt		Huaxintong Semiconductor Technology Co., Ltd.
 i2se	I2SE GmbH
 ibm	International Business Machines (IBM)
 idt	Integrated Device Technologies, Inc.
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index b5bd3de..a1b8816 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1199,6 +1199,7 @@  dtb-$(CONFIG_ARCH_ZX) += zx296702-ad1.dtb
 dtb-$(CONFIG_ARCH_ASPEED) += \
 	aspeed-ast2500-evb.dtb \
 	aspeed-bmc-arm-centriq2400-rep.dtb \
+	aspeed-bmc-arm-stardragon4800-rep2.dtb \
 	aspeed-bmc-intel-s2600wf.dtb \
 	aspeed-bmc-opp-lanyang.dtb \
 	aspeed-bmc-opp-palmetto.dtb \
diff --git a/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
new file mode 100644
index 0000000..83335c0
--- /dev/null
+++ b/arch/arm/boot/dts/aspeed-bmc-arm-stardragon4800-rep2.dts
@@ -0,0 +1,207 @@ 
+// SPDX-License-Identifier: GPL-2.0+
+/dts-v1/;
+
+#include "aspeed-g5.dtsi"
+#include <dt-bindings/gpio/aspeed-gpio.h>
+
+/ {
+	model = "HXT StarDragon 4800 REP2 AST2520";
+	compatible = "hxt,stardragon4800-rep2-bmc", "aspeed,ast2500";
+
+	chosen {
+		stdout-path = &uart5;
+		bootargs = "console=ttyS4,115200 earlyprintk";
+	};
+
+	memory {
+		reg = <0x80000000 0x40000000>;
+	};
+
+	iio-hwmon {
+		compatible = "iio-hwmon";
+		io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
+						<&adc 4>, <&adc 5>, <&adc 6>, <&adc 8>;
+	};
+
+	iio-hwmon-battery {
+		compatible = "iio-hwmon";
+		io-channels = <&adc 7>;
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		system_fault1 {
+			label = "System_fault1";
+			gpios = <&gpio ASPEED_GPIO(I, 3) GPIO_ACTIVE_LOW>;
+		};
+
+		system_fault2 {
+			label = "System_fault2";
+			gpios = <&gpio ASPEED_GPIO(I, 2) GPIO_ACTIVE_LOW>;
+		};
+	};
+};
+
+&fmc {
+	status = "okay";
+	flash@0 {
+		status = "okay";
+		m25p,fast-read;
+		label = "bmc";
+#include "openbmc-flash-layout.dtsi"
+	};
+};
+
+&spi1 {
+	status = "okay";
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_spi1_default>;
+	flash@0 {
+		status = "okay";
+	};
+};
+
+&spi2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_spi2ck_default
+			&pinctrl_spi2miso_default
+			&pinctrl_spi2mosi_default
+			&pinctrl_spi2cs0_default>;
+};
+
+&uart3 {
+	status = "okay";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_txd3_default &pinctrl_rxd3_default>;
+	current-speed = <115200>;
+};
+
+&uart5 {
+	status = "okay";
+};
+
+&mac0 {
+	status = "okay";
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_rgmii1_default &pinctrl_mdio1_default>;
+};
+
+&mac1 {
+	status = "okay";
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_rmii2_default>;
+	use-ncsi;
+};
+
+&i2c0 {
+	status = "okay";
+};
+
+&i2c1 {
+	status = "okay";
+
+	tmp421@1e {
+		compatible = "ti,tmp421";
+		reg = <0x1e>;
+	};
+	tmp421@2a {
+		compatible = "ti,tmp421";
+		reg = <0x2a>;
+	};
+	tmp421@1c {
+		compatible = "ti,tmp421";
+		reg = <0x1c>;
+	};
+};
+
+&i2c2 {
+	status = "okay";
+};
+
+&i2c3 {
+	status = "okay";
+};
+
+&i2c4 {
+	status = "okay";
+};
+
+&i2c5 {
+	status = "okay";
+};
+
+&i2c6 {
+	status = "okay";
+
+	tmp421@1f {
+		compatible = "ti,tmp421";
+		reg = <0x1f>;
+	};
+	nvt210@4c {
+		compatible = "nvt210";
+		reg = <0x4c>;
+	};
+	eeprom@50 {
+		compatible = "atmel,24c128";
+		reg = <0x50>;
+		pagesize = <128>;
+	};
+};
+
+&i2c7 {
+	status = "okay";
+};
+
+&i2c8 {
+	status = "okay";
+
+	pca9641@70 {
+		compatible = "nxp,pca9641";
+		reg = <0x70>;
+		i2c-arb {
+			#address-cells = <1>;
+			#size-cells = <0>;
+			eeprom@50 {
+				compatible = "atmel,24c02";
+				reg = <0x50>;
+			};
+			dps650ab@58 {
+				compatible = "dps650ab";
+				reg = <0x58>;
+			};
+		};
+	};
+};
+
+&i2c9 {
+	status = "okay";
+};
+
+&vuart {
+	status = "okay";
+};
+
+&gfx {
+	status = "okay";
+};
+
+&pinctrl {
+	aspeed,external-nodes = <&gfx &lhc>;
+};
+
+&gpio {
+	pin_gpio_c7 {
+		gpio-hog;
+		gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
+		output-low;
+		line-name = "BIOS_SPI_MUX_S";
+	};
+	pin_gpio_d1 {
+		gpio-hog;
+		gpios = <ASPEED_GPIO(D, 1) GPIO_ACTIVE_HIGH>;
+		output-high;
+		line-name = "PHY2_RESET_N";
+	};
+};