<div style="line-height:1.7;color:#000000;font-size:14px;font-family:Arial"><p style="margin: 0;"><br></p><p style="margin: 0;"><br></p><p style="margin: 0;"><br></p><p style="margin: 0;"><br></p><p style="margin: 0;"><br></p><div style="position:relative;zoom:1"></div><div id="divNeteaseMailCard"></div><p style="margin: 0;"><br></p><pre><br>At 2023-05-30 14:00:43, "Joel Stanley" <joel@jms.id.au> wrote:
>On Tue, 30 May 2023 at 03:03, <lintao1890@163.com> wrote:
>>
>> From: LinTao <lintao.lc@inspur.com>
>>
>> AST2600-INSPUR is an Inspur SCM V1 board which is
>> equipped with AST2600
>>
>> Signed-off-by: LinTao <lintao.lc@inspur.com>
>> ---
>> V1 -> V2:
>>     - add a missing '\'
>> ---
>> V2 -> V3:
>>     - use gpio subsystem
>> ---
>> V3 -> V4:
>>     - fix style problems
>> ---
>> V4 -> V5:
>>     - turn on SCM LED1
>> ---
>>  arch/arm/dts/Makefile                    |   3 +-
>>  arch/arm/dts/ast2600-inspur-nf5280m7.dts | 190 +++++++++++++++++++++++
>>  arch/arm/mach-aspeed/ast2600/Kconfig     |   8 +
>>  board/aspeed/ast2600_inspur/Kconfig      |  13 ++
>>  board/aspeed/ast2600_inspur/Makefile     |   1 +
>>  board/aspeed/ast2600_inspur/inspur.c     |  18 +++
>>  6 files changed, 232 insertions(+), 1 deletion(-)
>>  create mode 100644 arch/arm/dts/ast2600-inspur-nf5280m7.dts
>>  create mode 100644 board/aspeed/ast2600_inspur/Kconfig
>>  create mode 100644 board/aspeed/ast2600_inspur/Makefile
>>  create mode 100644 board/aspeed/ast2600_inspur/inspur.c
>>
>> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
>> index 6c34b83336..f62c16b4f1 100755
>> --- a/arch/arm/dts/Makefile
>> +++ b/arch/arm/dts/Makefile
>> @@ -695,7 +695,8 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
>>         ast2600-slt.dtb \
>>         ast2600-tacoma.dtb \
>>         ast2600-intel.dtb \
>> -       ast2600-tacoma.dtb
>> +       ast2600-tacoma.dtb \
>> +       ast2600-inspur-nf5280m7.dtb
>>
>>  dtb-$(CONFIG_ARCH_STI) += stih410-b2260.dtb
>>
>> diff --git a/arch/arm/dts/ast2600-inspur-nf5280m7.dts b/arch/arm/dts/ast2600-inspur-nf5280m7.dts
>> new file mode 100644
>> index 0000000000..8210797868
>> --- /dev/null
>> +++ b/arch/arm/dts/ast2600-inspur-nf5280m7.dts
>> @@ -0,0 +1,190 @@
>> +// SPDX-License-Identifier: GPL-2.0+
>> +// Copyright 2023 Inspur Corp.
>> +/dts-v1/;
>> +
>> +#include "ast2600-u-boot.dtsi"
>> +
>> +/ {
>> +       model = "Inspur SCM V1";
>> +       compatible = "inspur,nf5280m7-bmc", "aspeed,ast2600";
>> +
>> +       memory {
>> +               device_type = "memory";
>> +               reg = <0x80000000 0x40000000>;
>> +       };
>> +
>> +       chosen {
>> +               stdout-path = &uart5;
>> +       };
>> +
>> +       aliases {
>> +               mmc0 = &emmc_slot0;
>> +               mmc1 = &sdhci_slot0;
>> +               mmc2 = &sdhci_slot1;
>> +               spi0 = &fmc;
>> +               spi1 = &spi1;
>> +               spi2 = &spi2;
>> +               ethernet1 = &mac1;
>> +       };
>> +
>> +       cpus {
>> +               cpu@0 {
>> +                       clock-frequency = <1200000000>;
>> +               };
>> +               cpu@1 {
>> +                       clock-frequency = <1200000000>;
>> +               };
>> +       };
>> +};
>> +
>> +&gpio0 {
>> +       status = "okay";
>> +};
>> +
>> +&uart1 {
>> +       status = "okay";
>> +};
>> +
>> +&uart2 {
>> +       status = "okay";
>> +};
>> +
>> +&uart5 {
>> +       u-boot,dm-pre-reloc;
>> +       status = "okay";
>> +};
>> +
>> +&sdrammc {
>> +       clock-frequency = <400000000>;
>> +};
>> +
>> +&mdio {
>> +       status = "okay";
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_mdio2_default>;
>> +       #address-cells = <1>;
>> +       #size-cells = <0>;
>> +       ethphy0: ethernet-phy@0 {
>> +               reg = <0>;
>> +       };
>> +
>> +       ethphy1: ethernet-phy@1 {
>> +               reg = <0>;
>> +       };
>> +
>> +       ethphy2: ethernet-phy@2 {
>> +               reg = <0>;
>> +       };
>> +
>> +       ethphy3: ethernet-phy@3 {
>> +               reg = <0>;
>> +       };
>> +};
>> +
>> +&mac1 {
>> +       status = "okay";
>> +       phy-mode = "rgmii";
>> +       phy-handle = <&ethphy1>;
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_rgmii2_default>;
>> +};
>> +
>> +&fmc {
>> +       status = "okay";
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_fmcquad_default>;
>> +       flash@0 {
>> +               status = "okay";
>> +               spi-max-frequency = <40000000>;
>> +               spi-tx-bus-width = <4>;
>> +               spi-rx-bus-width = <4>;
>> +       };
>> +       flash@1 {
>> +               status = "okay";
>> +               spi-max-frequency = <40000000>;
>> +               spi-tx-bus-width = <4>;
>> +               spi-rx-bus-width = <4>;
>> +       };
>> +};
>> +
>> +&i2c1 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c2_default>;
>
>You shouldn't need to add the pinctrl nodes, as they're present in ast2600.dtsi.
>
>> +};
>> +
>> +&i2c4 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c5_default>;
>> +};
>> +
>> +&i2c5 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c6_default>;
>> +};
>> +
>> +&i2c6 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c7_default>;
>> +};
>> +
>> +&i2c7 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c8_default>;
>> +};
>> +
>> +&i2c8 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c9_default>;
>> +};
>> +
>> +&i2c9 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c10_default>;
>> +};
>> +
>> +&i2c12 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c13_default>;
>> +};
>> +
>> +&i2c13 {
>> +       status = "okay";
>> +       multi-master;
>> +
>> +       pinctrl-names = "default";
>> +       pinctrl-0 = <&pinctrl_i2c14_default>;
>> +};
>> +
>> +&hace {
>> +       u-boot,dm-pre-reloc;
>> +       status = "okay";
>> +};
>> +
>> +&acry {
>> +       u-boot,dm-pre-reloc;
>> +       status = "disabled";
>> +};
>
>
>> --- /dev/null
>> +++ b/board/aspeed/ast2600_inspur/inspur.c
>
> +int board_late_init(void)
>> +{
>> +       /* Turn on SCM LED1 */
>> +       gpio_request(ASPEED_GPIO(B, 2), "");
>> +       gpio_direction_output(ASPEED_GPIO(B, 2), GPIO_ACTIVE_LOW);
>
>Are you able to do this with a gpio hog in the device tree?
>
>If so, we would prefer that approach as it avoids adding another
>platform to the source tree.
>
>Cheers,
>
<div>>Joel</div><div><br></div><div><span style="font-family: Arial; white-space: normal;">I will be on the board_ late_init  adding other functions ,</span></div><div><span style="font-family: Arial; white-space: normal;">this turn on led1 is only the first fill. </span></div><div><span style="font-family: Arial; white-space: normal;"><br></span></div><div><font face="Arial"><span style="white-space: normal;">I hope my first submission is as simple as possible,</span></font></div><div><font face="Arial"><span style="white-space: normal;">so I added this Turn on Led.</span></font></div><div><pre><font face="Arial"><span style="white-space: normal;">It (</span></font><span style="font-family: Arial; white-space: normal;"> "</span><span style="font-family: Arial; white-space: normal;">turn on led1") </span><span style="white-space: normal; font-family: Arial;">will be deleted in the future.</span></pre></div><div><font face="Arial"><span style="white-space: normal;">so I didn't do this in the device tree .</span></font></div><div><font face="Arial"><span style="white-space: normal;"><br></span></font></div><div><font face="Arial"><span style="white-space: normal;"><br></span></font></div></pre></div>