[PATCH v3 linux dev-4.10] ARM: dts: aspeed: Add Portwell Neptune machine
Andrew Jeffery
andrew at aj.id.au
Mon Mar 26 16:29:37 AEDT 2018
Hi Amithash,
On Sat, 24 Mar 2018, at 05:35, Amithash Prasad wrote:
> Initial introduction of Portwell Neptune family equipped with
> Aspeed 2500 BMC SoC. Neptune is a x86 server development kit with a
> ASPEED ast2500 BMC manufactured by Portwell. Specifically, This
> adds the neptune platform device tree file including the flash
> layout used by the neptune machines.
>
> Signed-off-by: Amithash Prasad <amithash at fb.com>
> ---
> .../devicetree/bindings/vendor-prefixes.txt | 1 +
> arch/arm/boot/dts/Makefile | 1 +
> arch/arm/boot/dts/aspeed-bmc-portwell-neptune.dts | 162 +++++++++++++++++++++
> 3 files changed, 164 insertions(+)
> create mode 100644 arch/arm/boot/dts/aspeed-bmc-portwell-neptune.dts
>
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/
> Documentation/devicetree/bindings/vendor-prefixes.txt
> index 84601d8..9dbbe7d 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> @@ -228,6 +228,7 @@ pine64 Pine64
> pixcir PIXCIR MICROELECTRONICS Co., Ltd
> plathome Plat'Home Co., Ltd.
> plda PLDA
> +portwell Portwell Inc.
> powervr PowerVR (deprecated, use img)
> pulsedlight PulsedLight, Inc
> qca Qualcomm Atheros, Inc.
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 7c54fc8..044b960 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -993,6 +993,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += aspeed-bmc-opp-
> palmetto.dtb \
> aspeed-bmc-mellanox-msn.dtb \
> aspeed-bmc-quanta-q71l.dtb \
> aspeed-bmc-intel-s2600wf.dtb \
> + aspeed-bmc-portwell-neptune.dtb \
> aspeed-ast2500-evb.dtb
> endif
>
> diff --git a/arch/arm/boot/dts/aspeed-bmc-portwell-neptune.dts b/arch/
> arm/boot/dts/aspeed-bmc-portwell-neptune.dts
> new file mode 100644
> index 0000000..93e93d6
> --- /dev/null
> +++ b/arch/arm/boot/dts/aspeed-bmc-portwell-neptune.dts
> @@ -0,0 +1,162 @@
> +// SPDX-License-Identifier: GPL-2.0
> +// Copyright (c) 2017 Facebook Inc.
> +/dts-v1/;
> +
> +#include "aspeed-g5.dtsi"
> +#include <dt-bindings/gpio/aspeed-gpio.h>
> +
> +/ {
> + model = "Portwell Neptune BMC";
> + compatible = "portwell,neptune-bmc", "aspeed,ast2500";
> + aliases {
> + serial0 = &uart1;
> + serial4 = &uart5;
> + };
> + chosen {
> + stdout-path = &uart5;
> + bootargs = "console=ttyS4,115200 earlyprintk";
> + };
> +
> + memory {
> + reg = <0x80000000 0x20000000>;
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + postcode0 {
> + label="BMC_UP";
> + gpios = <&gpio ASPEED_GPIO(H, 0) GPIO_ACTIVE_HIGH>;
> + default-state = "on";
> + };
> + postcode1 {
> + label="BMC_HB";
> + gpios = <&gpio ASPEED_GPIO(H, 1) GPIO_ACTIVE_HIGH>;
> + linux,default-trigger = "heartbeat";
> + };
> + postcode2 {
> + label="FAULT";
> + gpios = <&gpio ASPEED_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
> + };
> + // postcode3-7 are GPIOH3-H7
> + };
> +};
> +
> +&wdt2 {
> + status = "okay";
> +};
> +
> +&fmc {
> + status = "okay";
> + flash at 0 {
> + status = "okay";
> + m25p,fast-read;
> +#include "openbmc-flash-layout.dtsi"
> + };
> +};
> +
> +&spi1 {
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_spi1_default>;
> + flash at 0 {
> + status = "okay";
> + m25p,fast-read;
> + label = "pnor";
> + };
> +};
> +
> +&uart1 {
> + // Host Console
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_txd1_default
> + &pinctrl_rxd1_default>;
> +};
> +
> +&uart5 {
> + // BMC Console
> + status = "okay";
> +};
> +
> +&mac0 {
> + status = "okay";
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_rmii1_default>;
This still looks under-specified - I expect you need to add `use-ncsi` here, or specify `&pinctrl_mdio1_default` in the pinctrl-0 node above (as you have to do one or the other, not neither, for RMII).
Everything else looks okay though from a pinmux perspective.
Cheers,
Andrew
> +};
> +
> +&mac1 {
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_rmii2_default>;
> + use-ncsi;
> +};
> +
> +&i2c1 {
> + status = "okay";
> + // To PCIe slot SMBUS
> +};
> +
> +&i2c2 {
> + status = "okay";
> + // To LAN I210
> +};
> +
> +&i2c3 {
> + status = "okay";
> + // SMBus to COMe AB
> +};
> +
> +&i2c4 {
> + status = "okay";
> + // I2C to COMe AB
> +};
> +
> +&i2c5 {
> + status = "okay";
> +// USB Debug card
> + pca9555 at 27 {
> + compatible = "nxp,pca9555";
> + reg = <0x27>;
> + };
> +};
> +
> +&i2c6 {
> + status = "okay";
> + tpm at 20 {
> + compatible = "infineon,slb9645tt";
> + reg = <0x20>;
> + };
> + tmp421 at 4e {
> + compatible = "ti,tmp421";
> + reg = <0x4e>;
> + };
> + tmp421 at 4f {
> + compatible = "ti,tmp421";
> + reg = <0x4f>;
> + };
> +};
> +
> +&i2c8 {
> + status = "okay";
> + eeprom at 51 {
> + compatible = "atmel,24c128";
> + reg = <0x51>;
> + pagesize = <32>;
> + };
> +};
> +
> +&pwm_tacho {
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default>;
> + fan at 0 {
> + reg = <0x00>;
> + aspeed,fan-tach-ch = /bits/ 8 <0x00>;
> + };
> +
> + fan at 1 {
> + reg = <0x00>;
> + aspeed,fan-tach-ch = /bits/ 8 <0x01>;
> + };
> +};
> --
> 2.9.5
>
--
Andrew Jeffery
andrew at aj.id.au
More information about the openbmc
mailing list