All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zev Weiss <zweiss@equinix.com>
To: linux-aspeed@lists.ozlabs.org
Subject: [PATCH v4] ARM: dts: aspeed: Adding Facebook Yosemite V3.5 BMC
Date: Wed, 20 Jul 2022 23:16:31 +0000	[thread overview]
Message-ID: <20220720231605.GA30806@packtop> (raw)
In-Reply-To: <20220720105331.GA23472@logan-ThinkPad-T14-Gen-1>

On Wed, Jul 20, 2022 at 03:53:31AM PDT, Logananth Sundararaj wrote:
>The Yosemite V3.5 is a facebook multi-node server
>platform that host four OCP server. The BMC
>in the Yosemite V3.5 platform based on AST2600 SoC.
>
>This patch adds linux device tree entry related to
>Yosemite V3.5 specific devices connected to BMC SoC.
>
>Signed-off-by: Logananth Sundararaj <logananth_s@hcl.com>
>
>---
>--- v4 - Bootagrs and memory removed.
>--- v3 - Addressed v2 patch comments.
>--- v2 - Enabled i2c drivers.
>--- v1 - Initial draft.
>---
>---
> arch/arm/boot/dts/Makefile                    |   1 +
> .../boot/dts/aspeed-bmc-facebook-fby35.dts    | 260 ++++++++++++++++++
> 2 files changed, 261 insertions(+)
> create mode 100644 arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>
>diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>index 7e0934180724..58add093e5fb 100644
>--- a/arch/arm/boot/dts/Makefile
>+++ b/arch/arm/boot/dts/Makefile
>@@ -1465,6 +1465,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
> 	aspeed-bmc-facebook-cloudripper.dtb \
> 	aspeed-bmc-facebook-cmm.dtb \
> 	aspeed-bmc-facebook-elbert.dtb \
>+	aspeed-bmc-facebook-fby35.dtb \
> 	aspeed-bmc-facebook-fuji.dtb \
> 	aspeed-bmc-facebook-galaxy100.dtb \
> 	aspeed-bmc-facebook-minipack.dtb \
>diff --git a/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts b/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>new file mode 100644
>index 000000000000..05efba7117a8
>--- /dev/null
>+++ b/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>@@ -0,0 +1,260 @@
>+// SPDX-License-Identifier: GPL-2.0-or-later
>+// Copyright (c) 2020 Facebook Inc.
>+
>+/dts-v1/;
>+
>+#include "aspeed-g6.dtsi"
>+#include <dt-bindings/gpio/aspeed-gpio.h>
>+#include <dt-bindings/i2c/i2c.h>
>+
>+/ {
>+	model = "Facebook fby35";
>+	compatible = "facebook,fby35", "aspeed,ast2600";
>+
>+	aliases {
>+		serial4 = &uart5;
>+	};
>+
>+	chosen {
>+		stdout-path = &uart5;
>+	};
>+
>+	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>;
>+	};

A blank line here would be nice for formatting consistency...

>+	spi_gpio: spi-gpio {
>+		status = "okay";
>+		compatible = "spi-gpio";
>+		#address-cells = <1>;
>+		#size-cells = <0>;
>+
>+		gpio-sck = <&gpio0 ASPEED_GPIO(X, 3) GPIO_ACTIVE_HIGH>;
>+		gpio-mosi = <&gpio0 ASPEED_GPIO(X, 4) GPIO_ACTIVE_HIGH>;
>+		gpio-miso = <&gpio0 ASPEED_GPIO(X, 5) GPIO_ACTIVE_HIGH>;
>+		num-chipselects = <1>;
>+		cs-gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>;
>+
>+		tpmdev at 0 {
>+			compatible = "tcg,tpm_tis-spi";
>+			spi-max-frequency = <33000000>;
>+			reg = <0>;
>+		};
>+	};
>+

...and this one could be removed.

>+};
>+
>+&mac3 {
>+	status = "okay";
>+
>+	pinctrl-names = "default";
>+	pinctrl-0 = <&pinctrl_rmii4_default>;
>+	no-hw-checksum;
>+	use-ncsi;
>+	mlx,multi-host;
>+	ncsi-ctrl,start-redo-probe;
>+	ncsi-ctrl,no-channel-monitor;
>+	ncsi-package = <1>;
>+	ncsi-channel = <1>;
>+	ncsi-rexmit = <1>;
>+	ncsi-timeout = <2>;
>+};
>+
>+&uart1 {
>+	status = "okay";
>+};
>+
>+&uart2 {
>+	status = "okay";
>+};
>+
>+&uart3 {
>+	status = "okay";
>+};
>+
>+&uart4 {
>+	status = "okay";
>+};
>+
>+&uart5 {
>+	status = "okay";
>+	compatible = "snps,dw-apb-uart";
>+};
>+
>+&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>;
>+};
>+
>+&rtc {
>+	status = "okay";
>+};
>+
>+&fmc {
>+	status = "okay";
>+	flash at 0 {
>+		status = "okay";
>+		m25p,fast-read;
>+		label = "spi0.1";
>+		spi-max-frequency = <50000000>;
>+		#include "openbmc-flash-layout-128.dtsi"
>+	};
>+	flash at 1 {
>+		status = "okay";
>+		m25p,fast-read;
>+		label = "spi0.0";
>+		spi-max-frequency = <50000000>;
>+		#include "openbmc-flash-layout.dtsi"
>+	};

The labels on these look backwards from what I'd guess was probably
intended (flash at 0 is spi0.1 and flash at 1 is spi0.0).

>+};
>+
>+&i2c0 {
>+	//Host1 IPMB bus

While it's not currently 100% consistent, I think the generally
preferred style is to put a space after '//' (here and elsewhere).

>+	status = "okay";
>+	multi-master;
>+	ipmb0 at 10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c1 {
>+	//Host2 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb1 at 10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c2 {
>+	//Host3 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb2 at 10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c3 {
>+	//Host1 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb3 at 10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c4 {
>+	status = "okay";
>+};
>+
>+&i2c5 {
>+	status = "okay";
>+};
>+
>+&i2c6 {
>+	status = "okay";
>+};
>+
>+&i2c7 {
>+	status = "okay";
>+};
>+
>+&i2c8 {
>+	//NIC SENSOR TEMP
>+	status = "okay";
>+	tmp421 at 1f {
>+		compatible = "ti,tmp421";
>+		reg = <0x1f>;
>+	};
>+};
>+
>+&i2c9 {
>+	// Debug-Card IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb9 at 30 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x30 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c10 {
>+	status = "okay";
>+};
>+
>+&i2c11 {
>+	status = "okay";
>+	//FRU EEPROM
>+	eeprom at 51 {
>+		compatible = "atmel,24c64";
>+		reg = <0x51>;
>+		pagesize = <32>;
>+	};
>+};
>+
>+&i2c12 {
>+	status = "okay";
>+	//INLET TEMP
>+	tmp75 at 4e {
>+		compatible = "ti,tmp75";
>+		reg = <0x4e>;
>+	};
>+	//OUTLET TEMP
>+	tmp75 at 4f {
>+		compatible = "ti,tmp75";
>+		reg = <0x4f>;
>+	};
>+};
>+
>+&i2c13 {
>+	status = "okay";
>+};
>+
>+&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
>+		&pinctrl_adc10_default &pinctrl_adc11_default
>+		&pinctrl_adc12_default &pinctrl_adc13_default>;
>+};

Missing blank line.

>+&ehci0 {
>+	status = "okay";
>+};
>+
>+&ehci1 {
>+	status = "okay";
>+};
>+
>+&uhci {
>+	status = "okay";
>+};
>-- 
>2.17.1
>

WARNING: multiple messages have this Message-ID (diff)
From: Zev Weiss <zweiss@equinix.com>
To: Logananth Sundararaj <logananth13.hcl@gmail.com>
Cc: "devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-aspeed@lists.ozlabs.org" <linux-aspeed@lists.ozlabs.org>,
	Arnd Bergmann <arnd@arndb.de>, Andrew Jeffery <andrew@aj.id.au>,
	"openbmc@lists.ozlabs.org" <openbmc@lists.ozlabs.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"naveen.mosess@hcl.com" <naveen.mosess@hcl.com>,
	"thangavel.k@hcl.com" <thangavel.k@hcl.com>,
	"soc@kernel.org" <soc@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Joel Stanley <joel@jms.id.au>,
	Olof Johansson <olof@lixom.net>,
	"garnermic@gmail.com" <garnermic@gmail.com>,
	"velumanit@hcl.com" <velumanit@hcl.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v4] ARM: dts: aspeed: Adding Facebook Yosemite V3.5 BMC
Date: Wed, 20 Jul 2022 23:16:31 +0000	[thread overview]
Message-ID: <20220720231605.GA30806@packtop> (raw)
In-Reply-To: <20220720105331.GA23472@logan-ThinkPad-T14-Gen-1>

On Wed, Jul 20, 2022 at 03:53:31AM PDT, Logananth Sundararaj wrote:
>The Yosemite V3.5 is a facebook multi-node server
>platform that host four OCP server. The BMC
>in the Yosemite V3.5 platform based on AST2600 SoC.
>
>This patch adds linux device tree entry related to
>Yosemite V3.5 specific devices connected to BMC SoC.
>
>Signed-off-by: Logananth Sundararaj <logananth_s@hcl.com>
>
>---
>--- v4 - Bootagrs and memory removed.
>--- v3 - Addressed v2 patch comments.
>--- v2 - Enabled i2c drivers.
>--- v1 - Initial draft.
>---
>---
> arch/arm/boot/dts/Makefile                    |   1 +
> .../boot/dts/aspeed-bmc-facebook-fby35.dts    | 260 ++++++++++++++++++
> 2 files changed, 261 insertions(+)
> create mode 100644 arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>
>diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>index 7e0934180724..58add093e5fb 100644
>--- a/arch/arm/boot/dts/Makefile
>+++ b/arch/arm/boot/dts/Makefile
>@@ -1465,6 +1465,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
> 	aspeed-bmc-facebook-cloudripper.dtb \
> 	aspeed-bmc-facebook-cmm.dtb \
> 	aspeed-bmc-facebook-elbert.dtb \
>+	aspeed-bmc-facebook-fby35.dtb \
> 	aspeed-bmc-facebook-fuji.dtb \
> 	aspeed-bmc-facebook-galaxy100.dtb \
> 	aspeed-bmc-facebook-minipack.dtb \
>diff --git a/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts b/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>new file mode 100644
>index 000000000000..05efba7117a8
>--- /dev/null
>+++ b/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>@@ -0,0 +1,260 @@
>+// SPDX-License-Identifier: GPL-2.0-or-later
>+// Copyright (c) 2020 Facebook Inc.
>+
>+/dts-v1/;
>+
>+#include "aspeed-g6.dtsi"
>+#include <dt-bindings/gpio/aspeed-gpio.h>
>+#include <dt-bindings/i2c/i2c.h>
>+
>+/ {
>+	model = "Facebook fby35";
>+	compatible = "facebook,fby35", "aspeed,ast2600";
>+
>+	aliases {
>+		serial4 = &uart5;
>+	};
>+
>+	chosen {
>+		stdout-path = &uart5;
>+	};
>+
>+	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>;
>+	};

A blank line here would be nice for formatting consistency...

>+	spi_gpio: spi-gpio {
>+		status = "okay";
>+		compatible = "spi-gpio";
>+		#address-cells = <1>;
>+		#size-cells = <0>;
>+
>+		gpio-sck = <&gpio0 ASPEED_GPIO(X, 3) GPIO_ACTIVE_HIGH>;
>+		gpio-mosi = <&gpio0 ASPEED_GPIO(X, 4) GPIO_ACTIVE_HIGH>;
>+		gpio-miso = <&gpio0 ASPEED_GPIO(X, 5) GPIO_ACTIVE_HIGH>;
>+		num-chipselects = <1>;
>+		cs-gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>;
>+
>+		tpmdev@0 {
>+			compatible = "tcg,tpm_tis-spi";
>+			spi-max-frequency = <33000000>;
>+			reg = <0>;
>+		};
>+	};
>+

...and this one could be removed.

>+};
>+
>+&mac3 {
>+	status = "okay";
>+
>+	pinctrl-names = "default";
>+	pinctrl-0 = <&pinctrl_rmii4_default>;
>+	no-hw-checksum;
>+	use-ncsi;
>+	mlx,multi-host;
>+	ncsi-ctrl,start-redo-probe;
>+	ncsi-ctrl,no-channel-monitor;
>+	ncsi-package = <1>;
>+	ncsi-channel = <1>;
>+	ncsi-rexmit = <1>;
>+	ncsi-timeout = <2>;
>+};
>+
>+&uart1 {
>+	status = "okay";
>+};
>+
>+&uart2 {
>+	status = "okay";
>+};
>+
>+&uart3 {
>+	status = "okay";
>+};
>+
>+&uart4 {
>+	status = "okay";
>+};
>+
>+&uart5 {
>+	status = "okay";
>+	compatible = "snps,dw-apb-uart";
>+};
>+
>+&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>;
>+};
>+
>+&rtc {
>+	status = "okay";
>+};
>+
>+&fmc {
>+	status = "okay";
>+	flash@0 {
>+		status = "okay";
>+		m25p,fast-read;
>+		label = "spi0.1";
>+		spi-max-frequency = <50000000>;
>+		#include "openbmc-flash-layout-128.dtsi"
>+	};
>+	flash@1 {
>+		status = "okay";
>+		m25p,fast-read;
>+		label = "spi0.0";
>+		spi-max-frequency = <50000000>;
>+		#include "openbmc-flash-layout.dtsi"
>+	};

The labels on these look backwards from what I'd guess was probably
intended (flash@0 is spi0.1 and flash@1 is spi0.0).

>+};
>+
>+&i2c0 {
>+	//Host1 IPMB bus

While it's not currently 100% consistent, I think the generally
preferred style is to put a space after '//' (here and elsewhere).

>+	status = "okay";
>+	multi-master;
>+	ipmb0@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c1 {
>+	//Host2 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb1@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c2 {
>+	//Host3 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb2@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c3 {
>+	//Host1 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb3@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c4 {
>+	status = "okay";
>+};
>+
>+&i2c5 {
>+	status = "okay";
>+};
>+
>+&i2c6 {
>+	status = "okay";
>+};
>+
>+&i2c7 {
>+	status = "okay";
>+};
>+
>+&i2c8 {
>+	//NIC SENSOR TEMP
>+	status = "okay";
>+	tmp421@1f {
>+		compatible = "ti,tmp421";
>+		reg = <0x1f>;
>+	};
>+};
>+
>+&i2c9 {
>+	// Debug-Card IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb9@30 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x30 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c10 {
>+	status = "okay";
>+};
>+
>+&i2c11 {
>+	status = "okay";
>+	//FRU EEPROM
>+	eeprom@51 {
>+		compatible = "atmel,24c64";
>+		reg = <0x51>;
>+		pagesize = <32>;
>+	};
>+};
>+
>+&i2c12 {
>+	status = "okay";
>+	//INLET TEMP
>+	tmp75@4e {
>+		compatible = "ti,tmp75";
>+		reg = <0x4e>;
>+	};
>+	//OUTLET TEMP
>+	tmp75@4f {
>+		compatible = "ti,tmp75";
>+		reg = <0x4f>;
>+	};
>+};
>+
>+&i2c13 {
>+	status = "okay";
>+};
>+
>+&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
>+		&pinctrl_adc10_default &pinctrl_adc11_default
>+		&pinctrl_adc12_default &pinctrl_adc13_default>;
>+};

Missing blank line.

>+&ehci0 {
>+	status = "okay";
>+};
>+
>+&ehci1 {
>+	status = "okay";
>+};
>+
>+&uhci {
>+	status = "okay";
>+};
>-- 
>2.17.1
>

WARNING: multiple messages have this Message-ID (diff)
From: Zev Weiss <zweiss@equinix.com>
To: Logananth Sundararaj <logananth13.hcl@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>, Olof Johansson <olof@lixom.net>,
	"soc@kernel.org" <soc@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Joel Stanley <joel@jms.id.au>,
	Andrew Jeffery <andrew@aj.id.au>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-aspeed@lists.ozlabs.org" <linux-aspeed@lists.ozlabs.org>,
	"openbmc@lists.ozlabs.org" <openbmc@lists.ozlabs.org>,
	"thangavel.k@hcl.com" <thangavel.k@hcl.com>,
	"garnermic@gmail.com" <garnermic@gmail.com>,
	"velumanit@hcl.com" <velumanit@hcl.com>,
	"naveen.mosess@hcl.com" <naveen.mosess@hcl.com>
Subject: Re: [PATCH v4] ARM: dts: aspeed: Adding Facebook Yosemite V3.5 BMC
Date: Wed, 20 Jul 2022 23:16:31 +0000	[thread overview]
Message-ID: <20220720231605.GA30806@packtop> (raw)
In-Reply-To: <20220720105331.GA23472@logan-ThinkPad-T14-Gen-1>

On Wed, Jul 20, 2022 at 03:53:31AM PDT, Logananth Sundararaj wrote:
>The Yosemite V3.5 is a facebook multi-node server
>platform that host four OCP server. The BMC
>in the Yosemite V3.5 platform based on AST2600 SoC.
>
>This patch adds linux device tree entry related to
>Yosemite V3.5 specific devices connected to BMC SoC.
>
>Signed-off-by: Logananth Sundararaj <logananth_s@hcl.com>
>
>---
>--- v4 - Bootagrs and memory removed.
>--- v3 - Addressed v2 patch comments.
>--- v2 - Enabled i2c drivers.
>--- v1 - Initial draft.
>---
>---
> arch/arm/boot/dts/Makefile                    |   1 +
> .../boot/dts/aspeed-bmc-facebook-fby35.dts    | 260 ++++++++++++++++++
> 2 files changed, 261 insertions(+)
> create mode 100644 arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>
>diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>index 7e0934180724..58add093e5fb 100644
>--- a/arch/arm/boot/dts/Makefile
>+++ b/arch/arm/boot/dts/Makefile
>@@ -1465,6 +1465,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
> 	aspeed-bmc-facebook-cloudripper.dtb \
> 	aspeed-bmc-facebook-cmm.dtb \
> 	aspeed-bmc-facebook-elbert.dtb \
>+	aspeed-bmc-facebook-fby35.dtb \
> 	aspeed-bmc-facebook-fuji.dtb \
> 	aspeed-bmc-facebook-galaxy100.dtb \
> 	aspeed-bmc-facebook-minipack.dtb \
>diff --git a/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts b/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>new file mode 100644
>index 000000000000..05efba7117a8
>--- /dev/null
>+++ b/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>@@ -0,0 +1,260 @@
>+// SPDX-License-Identifier: GPL-2.0-or-later
>+// Copyright (c) 2020 Facebook Inc.
>+
>+/dts-v1/;
>+
>+#include "aspeed-g6.dtsi"
>+#include <dt-bindings/gpio/aspeed-gpio.h>
>+#include <dt-bindings/i2c/i2c.h>
>+
>+/ {
>+	model = "Facebook fby35";
>+	compatible = "facebook,fby35", "aspeed,ast2600";
>+
>+	aliases {
>+		serial4 = &uart5;
>+	};
>+
>+	chosen {
>+		stdout-path = &uart5;
>+	};
>+
>+	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>;
>+	};

A blank line here would be nice for formatting consistency...

>+	spi_gpio: spi-gpio {
>+		status = "okay";
>+		compatible = "spi-gpio";
>+		#address-cells = <1>;
>+		#size-cells = <0>;
>+
>+		gpio-sck = <&gpio0 ASPEED_GPIO(X, 3) GPIO_ACTIVE_HIGH>;
>+		gpio-mosi = <&gpio0 ASPEED_GPIO(X, 4) GPIO_ACTIVE_HIGH>;
>+		gpio-miso = <&gpio0 ASPEED_GPIO(X, 5) GPIO_ACTIVE_HIGH>;
>+		num-chipselects = <1>;
>+		cs-gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>;
>+
>+		tpmdev@0 {
>+			compatible = "tcg,tpm_tis-spi";
>+			spi-max-frequency = <33000000>;
>+			reg = <0>;
>+		};
>+	};
>+

...and this one could be removed.

>+};
>+
>+&mac3 {
>+	status = "okay";
>+
>+	pinctrl-names = "default";
>+	pinctrl-0 = <&pinctrl_rmii4_default>;
>+	no-hw-checksum;
>+	use-ncsi;
>+	mlx,multi-host;
>+	ncsi-ctrl,start-redo-probe;
>+	ncsi-ctrl,no-channel-monitor;
>+	ncsi-package = <1>;
>+	ncsi-channel = <1>;
>+	ncsi-rexmit = <1>;
>+	ncsi-timeout = <2>;
>+};
>+
>+&uart1 {
>+	status = "okay";
>+};
>+
>+&uart2 {
>+	status = "okay";
>+};
>+
>+&uart3 {
>+	status = "okay";
>+};
>+
>+&uart4 {
>+	status = "okay";
>+};
>+
>+&uart5 {
>+	status = "okay";
>+	compatible = "snps,dw-apb-uart";
>+};
>+
>+&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>;
>+};
>+
>+&rtc {
>+	status = "okay";
>+};
>+
>+&fmc {
>+	status = "okay";
>+	flash@0 {
>+		status = "okay";
>+		m25p,fast-read;
>+		label = "spi0.1";
>+		spi-max-frequency = <50000000>;
>+		#include "openbmc-flash-layout-128.dtsi"
>+	};
>+	flash@1 {
>+		status = "okay";
>+		m25p,fast-read;
>+		label = "spi0.0";
>+		spi-max-frequency = <50000000>;
>+		#include "openbmc-flash-layout.dtsi"
>+	};

The labels on these look backwards from what I'd guess was probably
intended (flash@0 is spi0.1 and flash@1 is spi0.0).

>+};
>+
>+&i2c0 {
>+	//Host1 IPMB bus

While it's not currently 100% consistent, I think the generally
preferred style is to put a space after '//' (here and elsewhere).

>+	status = "okay";
>+	multi-master;
>+	ipmb0@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c1 {
>+	//Host2 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb1@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c2 {
>+	//Host3 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb2@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c3 {
>+	//Host1 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb3@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c4 {
>+	status = "okay";
>+};
>+
>+&i2c5 {
>+	status = "okay";
>+};
>+
>+&i2c6 {
>+	status = "okay";
>+};
>+
>+&i2c7 {
>+	status = "okay";
>+};
>+
>+&i2c8 {
>+	//NIC SENSOR TEMP
>+	status = "okay";
>+	tmp421@1f {
>+		compatible = "ti,tmp421";
>+		reg = <0x1f>;
>+	};
>+};
>+
>+&i2c9 {
>+	// Debug-Card IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb9@30 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x30 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c10 {
>+	status = "okay";
>+};
>+
>+&i2c11 {
>+	status = "okay";
>+	//FRU EEPROM
>+	eeprom@51 {
>+		compatible = "atmel,24c64";
>+		reg = <0x51>;
>+		pagesize = <32>;
>+	};
>+};
>+
>+&i2c12 {
>+	status = "okay";
>+	//INLET TEMP
>+	tmp75@4e {
>+		compatible = "ti,tmp75";
>+		reg = <0x4e>;
>+	};
>+	//OUTLET TEMP
>+	tmp75@4f {
>+		compatible = "ti,tmp75";
>+		reg = <0x4f>;
>+	};
>+};
>+
>+&i2c13 {
>+	status = "okay";
>+};
>+
>+&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
>+		&pinctrl_adc10_default &pinctrl_adc11_default
>+		&pinctrl_adc12_default &pinctrl_adc13_default>;
>+};

Missing blank line.

>+&ehci0 {
>+	status = "okay";
>+};
>+
>+&ehci1 {
>+	status = "okay";
>+};
>+
>+&uhci {
>+	status = "okay";
>+};
>-- 
>2.17.1
>

WARNING: multiple messages have this Message-ID (diff)
From: Zev Weiss <zweiss@equinix.com>
To: Logananth Sundararaj <logananth13.hcl@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>, Olof Johansson <olof@lixom.net>,
	"soc@kernel.org" <soc@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Joel Stanley <joel@jms.id.au>,
	Andrew Jeffery <andrew@aj.id.au>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-aspeed@lists.ozlabs.org" <linux-aspeed@lists.ozlabs.org>,
	"openbmc@lists.ozlabs.org" <openbmc@lists.ozlabs.org>,
	"thangavel.k@hcl.com" <thangavel.k@hcl.com>,
	"garnermic@gmail.com" <garnermic@gmail.com>,
	"velumanit@hcl.com" <velumanit@hcl.com>,
	"naveen.mosess@hcl.com" <naveen.mosess@hcl.com>
Subject: Re: [PATCH v4] ARM: dts: aspeed: Adding Facebook Yosemite V3.5 BMC
Date: Wed, 20 Jul 2022 23:16:31 +0000	[thread overview]
Message-ID: <20220720231605.GA30806@packtop> (raw)
In-Reply-To: <20220720105331.GA23472@logan-ThinkPad-T14-Gen-1>

On Wed, Jul 20, 2022 at 03:53:31AM PDT, Logananth Sundararaj wrote:
>The Yosemite V3.5 is a facebook multi-node server
>platform that host four OCP server. The BMC
>in the Yosemite V3.5 platform based on AST2600 SoC.
>
>This patch adds linux device tree entry related to
>Yosemite V3.5 specific devices connected to BMC SoC.
>
>Signed-off-by: Logananth Sundararaj <logananth_s@hcl.com>
>
>---
>--- v4 - Bootagrs and memory removed.
>--- v3 - Addressed v2 patch comments.
>--- v2 - Enabled i2c drivers.
>--- v1 - Initial draft.
>---
>---
> arch/arm/boot/dts/Makefile                    |   1 +
> .../boot/dts/aspeed-bmc-facebook-fby35.dts    | 260 ++++++++++++++++++
> 2 files changed, 261 insertions(+)
> create mode 100644 arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>
>diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>index 7e0934180724..58add093e5fb 100644
>--- a/arch/arm/boot/dts/Makefile
>+++ b/arch/arm/boot/dts/Makefile
>@@ -1465,6 +1465,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
> 	aspeed-bmc-facebook-cloudripper.dtb \
> 	aspeed-bmc-facebook-cmm.dtb \
> 	aspeed-bmc-facebook-elbert.dtb \
>+	aspeed-bmc-facebook-fby35.dtb \
> 	aspeed-bmc-facebook-fuji.dtb \
> 	aspeed-bmc-facebook-galaxy100.dtb \
> 	aspeed-bmc-facebook-minipack.dtb \
>diff --git a/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts b/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>new file mode 100644
>index 000000000000..05efba7117a8
>--- /dev/null
>+++ b/arch/arm/boot/dts/aspeed-bmc-facebook-fby35.dts
>@@ -0,0 +1,260 @@
>+// SPDX-License-Identifier: GPL-2.0-or-later
>+// Copyright (c) 2020 Facebook Inc.
>+
>+/dts-v1/;
>+
>+#include "aspeed-g6.dtsi"
>+#include <dt-bindings/gpio/aspeed-gpio.h>
>+#include <dt-bindings/i2c/i2c.h>
>+
>+/ {
>+	model = "Facebook fby35";
>+	compatible = "facebook,fby35", "aspeed,ast2600";
>+
>+	aliases {
>+		serial4 = &uart5;
>+	};
>+
>+	chosen {
>+		stdout-path = &uart5;
>+	};
>+
>+	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>;
>+	};

A blank line here would be nice for formatting consistency...

>+	spi_gpio: spi-gpio {
>+		status = "okay";
>+		compatible = "spi-gpio";
>+		#address-cells = <1>;
>+		#size-cells = <0>;
>+
>+		gpio-sck = <&gpio0 ASPEED_GPIO(X, 3) GPIO_ACTIVE_HIGH>;
>+		gpio-mosi = <&gpio0 ASPEED_GPIO(X, 4) GPIO_ACTIVE_HIGH>;
>+		gpio-miso = <&gpio0 ASPEED_GPIO(X, 5) GPIO_ACTIVE_HIGH>;
>+		num-chipselects = <1>;
>+		cs-gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>;
>+
>+		tpmdev@0 {
>+			compatible = "tcg,tpm_tis-spi";
>+			spi-max-frequency = <33000000>;
>+			reg = <0>;
>+		};
>+	};
>+

...and this one could be removed.

>+};
>+
>+&mac3 {
>+	status = "okay";
>+
>+	pinctrl-names = "default";
>+	pinctrl-0 = <&pinctrl_rmii4_default>;
>+	no-hw-checksum;
>+	use-ncsi;
>+	mlx,multi-host;
>+	ncsi-ctrl,start-redo-probe;
>+	ncsi-ctrl,no-channel-monitor;
>+	ncsi-package = <1>;
>+	ncsi-channel = <1>;
>+	ncsi-rexmit = <1>;
>+	ncsi-timeout = <2>;
>+};
>+
>+&uart1 {
>+	status = "okay";
>+};
>+
>+&uart2 {
>+	status = "okay";
>+};
>+
>+&uart3 {
>+	status = "okay";
>+};
>+
>+&uart4 {
>+	status = "okay";
>+};
>+
>+&uart5 {
>+	status = "okay";
>+	compatible = "snps,dw-apb-uart";
>+};
>+
>+&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>;
>+};
>+
>+&rtc {
>+	status = "okay";
>+};
>+
>+&fmc {
>+	status = "okay";
>+	flash@0 {
>+		status = "okay";
>+		m25p,fast-read;
>+		label = "spi0.1";
>+		spi-max-frequency = <50000000>;
>+		#include "openbmc-flash-layout-128.dtsi"
>+	};
>+	flash@1 {
>+		status = "okay";
>+		m25p,fast-read;
>+		label = "spi0.0";
>+		spi-max-frequency = <50000000>;
>+		#include "openbmc-flash-layout.dtsi"
>+	};

The labels on these look backwards from what I'd guess was probably
intended (flash@0 is spi0.1 and flash@1 is spi0.0).

>+};
>+
>+&i2c0 {
>+	//Host1 IPMB bus

While it's not currently 100% consistent, I think the generally
preferred style is to put a space after '//' (here and elsewhere).

>+	status = "okay";
>+	multi-master;
>+	ipmb0@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c1 {
>+	//Host2 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb1@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c2 {
>+	//Host3 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb2@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c3 {
>+	//Host1 IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb3@10 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c4 {
>+	status = "okay";
>+};
>+
>+&i2c5 {
>+	status = "okay";
>+};
>+
>+&i2c6 {
>+	status = "okay";
>+};
>+
>+&i2c7 {
>+	status = "okay";
>+};
>+
>+&i2c8 {
>+	//NIC SENSOR TEMP
>+	status = "okay";
>+	tmp421@1f {
>+		compatible = "ti,tmp421";
>+		reg = <0x1f>;
>+	};
>+};
>+
>+&i2c9 {
>+	// Debug-Card IPMB bus
>+	status = "okay";
>+	multi-master;
>+	ipmb9@30 {
>+		compatible = "ipmb-dev";
>+		reg = <(0x30 | I2C_OWN_SLAVE_ADDRESS)>;
>+		i2c-protocol;
>+	};
>+};
>+
>+&i2c10 {
>+	status = "okay";
>+};
>+
>+&i2c11 {
>+	status = "okay";
>+	//FRU EEPROM
>+	eeprom@51 {
>+		compatible = "atmel,24c64";
>+		reg = <0x51>;
>+		pagesize = <32>;
>+	};
>+};
>+
>+&i2c12 {
>+	status = "okay";
>+	//INLET TEMP
>+	tmp75@4e {
>+		compatible = "ti,tmp75";
>+		reg = <0x4e>;
>+	};
>+	//OUTLET TEMP
>+	tmp75@4f {
>+		compatible = "ti,tmp75";
>+		reg = <0x4f>;
>+	};
>+};
>+
>+&i2c13 {
>+	status = "okay";
>+};
>+
>+&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
>+		&pinctrl_adc10_default &pinctrl_adc11_default
>+		&pinctrl_adc12_default &pinctrl_adc13_default>;
>+};

Missing blank line.

>+&ehci0 {
>+	status = "okay";
>+};
>+
>+&ehci1 {
>+	status = "okay";
>+};
>+
>+&uhci {
>+	status = "okay";
>+};
>-- 
>2.17.1
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-07-20 23:16 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-20 10:53 [PATCH v4] ARM: dts: aspeed: Adding Facebook Yosemite V3.5 BMC Logananth Sundararaj
2022-07-20 10:53 ` Logananth Sundararaj
2022-07-20 10:53 ` Logananth Sundararaj
2022-07-20 10:53 ` Logananth Sundararaj
2022-07-20 23:16 ` Zev Weiss [this message]
2022-07-20 23:16   ` Zev Weiss
2022-07-20 23:16   ` Zev Weiss
2022-07-20 23:16   ` Zev Weiss
2022-07-26 11:37   ` logananth hcl
2022-07-26 11:37     ` logananth hcl
2022-07-26 11:37     ` logananth hcl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220720231605.GA30806@packtop \
    --to=zweiss@equinix.com \
    --cc=linux-aspeed@lists.ozlabs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.