Message ID | 20230509001102.5886-1-ryans@supermicro.com.tw |
---|---|
State | New |
Headers | show |
Series | ARM: dts: aspeed: Add Supermicro X13dem system BMC devicetree | expand |
On Tue, 9 May 2023 at 00:11, <lesly895@gmail.com> wrote: > > From: Ryan Sie <ryans@supermicro.com.tw> > > Add a devicetree for the new X13dem system. That is obvious. Some more details about the system would help for review. > > Signed-off-by: Ryan Sie <ryans@supermicro.com.tw> > --- > .../boot/dts/aspeed-bmc-supermicro-x13dem.dts | 283 ++++++++++++++++++ > 1 file changed, 283 insertions(+) > create mode 100644 arch/arm/boot/dts/aspeed-bmc-supermicro-x13dem.dts > > diff --git a/arch/arm/boot/dts/aspeed-bmc-supermicro-x13dem.dts b/arch/arm/boot/dts/aspeed-bmc-supermicro-x13dem.dts > new file mode 100644 > index 000000000000..b5aac905e7ea > --- /dev/null > +++ b/arch/arm/boot/dts/aspeed-bmc-supermicro-x13dem.dts > @@ -0,0 +1,283 @@ > +// SPDX-License-Identifier: GPL-2.0-or-later > +// Copyright 2023 Supermicro Corp. > +/dts-v1/; > + > +#include "aspeed-g6.dtsi" > +#include <dt-bindings/gpio/aspeed-gpio.h> > +#include <dt-bindings/i2c/i2c.h> > + > +/ { > + model = "X13dem"; Convetion is to name the machine the model + BMC, so this would be "X13DEM BMC". > + compatible = "aspeed,ast2600"; Needs a compatible for the machine. > + > + aliases { > + mmc0 = &emmc; > + }; > + > + chosen { > + stdout-path = &uart5; > + bootargs = "console=ttyS4,115200n8 earlycon"; > + }; > + > + memory@80000000 { > + device_type = "memory"; > + reg = <0x80000000 0x40000000>; > + }; > + > + reserved-memory { > + #address-cells = <1>; > + #size-cells = <1>; > + ranges; > + > + /* LPC FW cycle bridge region requires natural alignment */ > + flash_memory: region@b4000000 { > + no-map; > + reg = <0xb4000000 0x04000000>; /* 64M */ Are you sure you need this? > + }; > + > + /* VGA region is dictated by hardware strapping */ > + vga_memory: region@bf000000 { > + no-map; > + compatible = "shared-dma-pool"; > + reg = <0xbf000000 0x01000000>; /* 16M */ Are you sure you need this? > + }; > + }; > + > + leds { > + compatible = "gpio-leds"; > + powerfail { > + gpios = <&gpio0 ASPEED_GPIO(G, 5) GPIO_ACTIVE_LOW>; > + }; > + }; > + > + 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>, <&adc1 2>, <&adc1 3>, > + <&adc1 4>, <&adc1 5>, <&adc1 6>, <&adc1 7>; > + }; > +}; > + > +&adc0 { > + status = "okay"; > + aspeed,int-vref-microvolt = <2500000>; > + pinctrl-names = "default"; > + 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 { > + status = "okay"; > + aspeed,int-vref-microvolt = <2500000>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default > + &pinctrl_adc10_default &pinctrl_adc11_default > + &pinctrl_adc12_default &pinctrl_adc13_default > + &pinctrl_adc14_default &pinctrl_adc15_default>; > +}; > + > +&emmc_controller { > + status = "okay"; > +}; > + > +&pinctrl_emmc_default { > + bias-disable; > +}; > + > +&emmc { > + status = "okay"; > + clk-phase-mmc-hs200 = <180>, <180>; > +}; > + > +&spi1 { > + status = "okay"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_spi1_default>; > + > + flash@0 { > + status = "okay"; > + m25p,fast-read; > + label = "spi1:0"; > + spi-max-frequency = <25000000>; > + }; > +}; > + > +&gpio0 { > + status = "okay"; > + gpio-line-names = Consult this document for common names: https://github.com/openbmc/docs/blob/master/designs/device-tree-gpio-naming.md > + /*A0-A7*/ "","","","","","","","", > + /*B0-B7*/ "","","","","","","jpfr2","jpfr3", > + /*C0-C7*/ "","","","","","","","", > + /*D0-D7*/ "","","","","","","","", > + /*E0-E7*/ "","","","","","","","", > + /*F0-F7*/ "","","","","","","","", > + /*G0-G7*/ "","","","","","pwrfail-led","","", > + /*H0-H7*/ "smc-n","nmi-n","pwrbtn-n","rst-n","","","phy1-rst","", > + /*I0-I7*/ "","","","","","","","", > + /*J0-J7*/ "","","","","","","","", > + /*K0-K7*/ "","","","","","","","", > + /*L0-L7*/ "","","","","","","","", > + /*M0-M7*/ "","","","","","","","", > + /*N0-N7*/ "","","","","","","","", > + /*O0-O7*/ "","","","","","","","speaker-bmc", > + /*P0-P7*/ "cpld-int","","","","","","","bmc-hbled-n", > + /*Q0-Q7*/ "","","","","","","","", > + /*R0-R7*/ "","","","","pwr-ctrl-4","","","", > + /*S0-S7*/ "","","wake-n","","pwrok-in","pcie-rst-in","","uid-sw-in", > + /*T0-T7*/ "","","","","","","","", > + /*U0-U7*/ "","","","","","","","", > + /*V0-V7*/ "","","","","","","","", > + /*W0-W7*/ "","","","","","","","", > + /*X0-X7*/ "","bios-cmp-in","smci-pch-out","","","","nmi-in","bmc-ready", > + /*Y0-Y7*/ "","bmc-hb-led","bmc-cpld-mux-sel","emmc-rst","","","sci-bmc-out","", > + /*Z0-Z7*/ "bmc-prg-n","pwer-ctrl-1","pwrbtn-in","","","","",""; > +}; > + > +&gpio1 { > + status = "disabled"; > +}; > + > +&sgpiom0 { > + status = "disabled"; If you're disabling it you can remove the names below. > + gpio-line-names = > + /* SGPIO output lines */ > + /*OA0-OA7*/ "","","","","","","","", > + /*OB0-OB7*/ "","","","","","","","", > + /*OC0-OC7*/ "","","","","","","","", > + /*OD0-OD7*/ "","","","","","","","", > + /*OE0-OE7*/ "","","","","","","","", > + /*OF0-OF7*/ "","","","","","","","", > + /*OG0-OG7*/ "","","","","","","","", > + /*OH0-OH7*/ "","","","","","","","", > + /*OI0-OI7*/ "","","","","","","","", > + /*OJ0-OJ7*/ "","","","","","","","", > + /*DUMMY*/ "","","","","","","","", > + /*DUMMY*/ "","","","","","","","", > + > + /* SGPIO input lines */ > + /*IA0-IA7*/ "","","","","","","","", > + /*IB0-IB7*/ "","","","","","","","", > + /*IC0-IC7*/ "","","","","","","","", > + /*ID0-ID7*/ "","","","","","","","", > + /*IE0-IE7*/ "","","","","","","","", > + /*IF0-IF7*/ "","","","","","","","", > + /*IG0-IG7*/ "","","","","","","","", > + /*IH0-IH7*/ "","","","","","","","", > + /*II0-II7*/ "","","","","","","","", > + /*IJ0-IJ7*/ "","","","","","","",""; > +}; > + > +&kcs3 { > + aspeed,lpc-io-reg = <0xca2>; > + status = "okay"; > +}; > + > +&kcs4 { > + aspeed,lpc-io-reg = <0xca4>; > + status = "okay"; > +}; > + > +&uart1 { > + status = "okay"; > +}; > + > +&uart2 { > + status = "okay"; > +}; > + > +&uart3 { > + status = "okay"; > +}; > + > +&uart4 { > + status = "okay"; > +}; > + > +&uart_routing { > + status = "okay"; > +}; > + > +&mdio0 { > + status = "okay"; > + > + ethphy0: ethernet-phy@0 { > + compatible = "ethernet-phy-ieee802.3-c22"; > + reg = <0>; > + }; > +}; > + > +&mac0 { > + status = "okay"; > + > + phy-mode = "rgmii"; > + phy-handle = <ðphy0>; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_rgmii1_default>; > +}; > + > +&mac2 { > + status = "okay"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_rmii3_default>; > + clocks = <&syscon ASPEED_CLK_GATE_MAC3CLK>, > + <&syscon ASPEED_CLK_MAC3RCLK>; > + clock-names = "MACCLK", "RCLK"; > + use-ncsi; > +}; > + > +&i2c0 { > + status = "okay"; > +}; > + > +&i2c1 { > + status = "disabled"; > +}; > + > +&i2c2 { > + multi-master; > + status = "okay"; > +}; > + > +&i2c3 { > + status = "okay"; > +}; > + > +&i2c4 { > + status = "okay"; > + bus-frequency = <400000>; > +}; > + > +&i2c5 { > + status = "okay"; > +}; > + > +&i2c6 { > + status = "okay"; > +}; > + > +&i2c7 { > + status = "okay"; > +}; > + > +&lpc_ctrl { > + status = "okay"; > + memory-region = <&flash_memory>; > +}; > + > +&xdma { > + status = "okay"; > + memory-region = <&vga_memory>; > +}; > + > +&vhub { > + status = "okay"; > +}; > + > +&rtc { > + status = "okay"; > +}; > + > -- > 2.34.1 >
diff --git a/arch/arm/boot/dts/aspeed-bmc-supermicro-x13dem.dts b/arch/arm/boot/dts/aspeed-bmc-supermicro-x13dem.dts new file mode 100644 index 000000000000..b5aac905e7ea --- /dev/null +++ b/arch/arm/boot/dts/aspeed-bmc-supermicro-x13dem.dts @@ -0,0 +1,283 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +// Copyright 2023 Supermicro Corp. +/dts-v1/; + +#include "aspeed-g6.dtsi" +#include <dt-bindings/gpio/aspeed-gpio.h> +#include <dt-bindings/i2c/i2c.h> + +/ { + model = "X13dem"; + compatible = "aspeed,ast2600"; + + aliases { + mmc0 = &emmc; + }; + + chosen { + stdout-path = &uart5; + bootargs = "console=ttyS4,115200n8 earlycon"; + }; + + memory@80000000 { + device_type = "memory"; + reg = <0x80000000 0x40000000>; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* LPC FW cycle bridge region requires natural alignment */ + flash_memory: region@b4000000 { + no-map; + reg = <0xb4000000 0x04000000>; /* 64M */ + }; + + /* VGA region is dictated by hardware strapping */ + vga_memory: region@bf000000 { + no-map; + compatible = "shared-dma-pool"; + reg = <0xbf000000 0x01000000>; /* 16M */ + }; + }; + + leds { + compatible = "gpio-leds"; + powerfail { + gpios = <&gpio0 ASPEED_GPIO(G, 5) GPIO_ACTIVE_LOW>; + }; + }; + + 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>, <&adc1 2>, <&adc1 3>, + <&adc1 4>, <&adc1 5>, <&adc1 6>, <&adc1 7>; + }; +}; + +&adc0 { + status = "okay"; + aspeed,int-vref-microvolt = <2500000>; + pinctrl-names = "default"; + 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 { + status = "okay"; + aspeed,int-vref-microvolt = <2500000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default + &pinctrl_adc10_default &pinctrl_adc11_default + &pinctrl_adc12_default &pinctrl_adc13_default + &pinctrl_adc14_default &pinctrl_adc15_default>; +}; + +&emmc_controller { + status = "okay"; +}; + +&pinctrl_emmc_default { + bias-disable; +}; + +&emmc { + status = "okay"; + clk-phase-mmc-hs200 = <180>, <180>; +}; + +&spi1 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_spi1_default>; + + flash@0 { + status = "okay"; + m25p,fast-read; + label = "spi1:0"; + spi-max-frequency = <25000000>; + }; +}; + +&gpio0 { + status = "okay"; + gpio-line-names = + /*A0-A7*/ "","","","","","","","", + /*B0-B7*/ "","","","","","","jpfr2","jpfr3", + /*C0-C7*/ "","","","","","","","", + /*D0-D7*/ "","","","","","","","", + /*E0-E7*/ "","","","","","","","", + /*F0-F7*/ "","","","","","","","", + /*G0-G7*/ "","","","","","pwrfail-led","","", + /*H0-H7*/ "smc-n","nmi-n","pwrbtn-n","rst-n","","","phy1-rst","", + /*I0-I7*/ "","","","","","","","", + /*J0-J7*/ "","","","","","","","", + /*K0-K7*/ "","","","","","","","", + /*L0-L7*/ "","","","","","","","", + /*M0-M7*/ "","","","","","","","", + /*N0-N7*/ "","","","","","","","", + /*O0-O7*/ "","","","","","","","speaker-bmc", + /*P0-P7*/ "cpld-int","","","","","","","bmc-hbled-n", + /*Q0-Q7*/ "","","","","","","","", + /*R0-R7*/ "","","","","pwr-ctrl-4","","","", + /*S0-S7*/ "","","wake-n","","pwrok-in","pcie-rst-in","","uid-sw-in", + /*T0-T7*/ "","","","","","","","", + /*U0-U7*/ "","","","","","","","", + /*V0-V7*/ "","","","","","","","", + /*W0-W7*/ "","","","","","","","", + /*X0-X7*/ "","bios-cmp-in","smci-pch-out","","","","nmi-in","bmc-ready", + /*Y0-Y7*/ "","bmc-hb-led","bmc-cpld-mux-sel","emmc-rst","","","sci-bmc-out","", + /*Z0-Z7*/ "bmc-prg-n","pwer-ctrl-1","pwrbtn-in","","","","",""; +}; + +&gpio1 { + status = "disabled"; +}; + +&sgpiom0 { + status = "disabled"; + gpio-line-names = + /* SGPIO output lines */ + /*OA0-OA7*/ "","","","","","","","", + /*OB0-OB7*/ "","","","","","","","", + /*OC0-OC7*/ "","","","","","","","", + /*OD0-OD7*/ "","","","","","","","", + /*OE0-OE7*/ "","","","","","","","", + /*OF0-OF7*/ "","","","","","","","", + /*OG0-OG7*/ "","","","","","","","", + /*OH0-OH7*/ "","","","","","","","", + /*OI0-OI7*/ "","","","","","","","", + /*OJ0-OJ7*/ "","","","","","","","", + /*DUMMY*/ "","","","","","","","", + /*DUMMY*/ "","","","","","","","", + + /* SGPIO input lines */ + /*IA0-IA7*/ "","","","","","","","", + /*IB0-IB7*/ "","","","","","","","", + /*IC0-IC7*/ "","","","","","","","", + /*ID0-ID7*/ "","","","","","","","", + /*IE0-IE7*/ "","","","","","","","", + /*IF0-IF7*/ "","","","","","","","", + /*IG0-IG7*/ "","","","","","","","", + /*IH0-IH7*/ "","","","","","","","", + /*II0-II7*/ "","","","","","","","", + /*IJ0-IJ7*/ "","","","","","","",""; +}; + +&kcs3 { + aspeed,lpc-io-reg = <0xca2>; + status = "okay"; +}; + +&kcs4 { + aspeed,lpc-io-reg = <0xca4>; + status = "okay"; +}; + +&uart1 { + status = "okay"; +}; + +&uart2 { + status = "okay"; +}; + +&uart3 { + status = "okay"; +}; + +&uart4 { + status = "okay"; +}; + +&uart_routing { + status = "okay"; +}; + +&mdio0 { + status = "okay"; + + ethphy0: ethernet-phy@0 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <0>; + }; +}; + +&mac0 { + status = "okay"; + + phy-mode = "rgmii"; + phy-handle = <ðphy0>; + + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_rgmii1_default>; +}; + +&mac2 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_rmii3_default>; + clocks = <&syscon ASPEED_CLK_GATE_MAC3CLK>, + <&syscon ASPEED_CLK_MAC3RCLK>; + clock-names = "MACCLK", "RCLK"; + use-ncsi; +}; + +&i2c0 { + status = "okay"; +}; + +&i2c1 { + status = "disabled"; +}; + +&i2c2 { + multi-master; + status = "okay"; +}; + +&i2c3 { + status = "okay"; +}; + +&i2c4 { + status = "okay"; + bus-frequency = <400000>; +}; + +&i2c5 { + status = "okay"; +}; + +&i2c6 { + status = "okay"; +}; + +&i2c7 { + status = "okay"; +}; + +&lpc_ctrl { + status = "okay"; + memory-region = <&flash_memory>; +}; + +&xdma { + status = "okay"; + memory-region = <&vga_memory>; +}; + +&vhub { + status = "okay"; +}; + +&rtc { + status = "okay"; +}; +