Re: [PATCH] ARM: dts: aspeed: Adding Facebook Yosemite V2 BMC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Andrew/Vijay,

Thanks for the review .

The following changes done in dts and tested in Facebook Yosemite V2 BMC platform,
  1. LPC feature removed as not supported .
  2. VUART feature removed as not supported.
  3. Host UART feature removed as not in the current scope.
  4. ADC pinctrl details added in dts.

Thanks
Mani.E

On Wed, Nov 20, 2019 at 06:50:15AM +0000, Vijay Khemka wrote:
> 
> 
> On 11/19/19, 9:56 PM, "Linux-aspeed on behalf of Andrew Jeffery" <linux-aspeed-bounces+vijaykhemka=fb.com@xxxxxxxxxxxxxxxx on behalf of andrew@xxxxxxxx> wrote:
> 
>     
>     
>     On Mon, 18 Nov 2019, at 23:07, manikandan-e wrote:
>     > The Yosemite V2 is a facebook multi-node server
>     > platform that host four OCP server. The BMC
>     > in the Yosemite V2 platorm based on AST2500 SoC.
>     > 
>     > This patch adds linux device tree entry related to
>     > Yosemite V2 specific devices connected to BMC SoC.
>     > 
>     > Signed-off-by: manikandan-e <manikandan.hcl.ers.epl@xxxxxxxxx>
>     > ---
>     >  .../boot/dts/aspeed-bmc-facebook-yosemitev2.dts    | 170 +++++++++++++++++++++
>     >  1 file changed, 170 insertions(+)
>     >  create mode 100644 arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts
>     > 
>     > diff --git a/arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts 
>     > b/arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts
>     > new file mode 100644
>     > index 0000000..46a285a
>     > --- /dev/null
>     > +++ b/arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts
>     > @@ -0,0 +1,170 @@
>     > +// SPDX-License-Identifier: GPL-2.0+
>     > +// Copyright (c) 2018 Facebook Inc.
>     > +// Author:
>     > +/dts-v1/;
>     > +
>     > +#include "aspeed-g5.dtsi"
>     > +#include <dt-bindings/gpio/aspeed-gpio.h>
>     > +
>     > +/ {
>     > +	model = "Facebook Yosemitev2 BMC";
>     > +	compatible = "facebook,yosemitev2-bmc", "aspeed,ast2500";
>     > +	aliases {
>     > +		serial0 = &uart1;
>     > +		serial4 = &uart5;
>     > +	};
>     > +	chosen {
>     > +		stdout-path = &uart5;
>     > +		bootargs = "console=ttyS4,115200 earlyprintk";
>     > +	};
>     > +
>     > +	memory@80000000 {
>     > +		reg = <0x80000000 0x20000000>;
>     > +	};
>     > +
>     > +	iio-hwmon {
>     > +		// VOLATAGE SENSOR
>     > +		compatible = "iio-hwmon";
>     > +		io-channels = <&adc 0> , <&adc 1> , <&adc 2> ,  <&adc 3> ,
>     > +		<&adc 4> , <&adc 5> , <&adc 6> ,  <&adc 7> ,
>     > +		<&adc 8> , <&adc 9> , <&adc 10>, <&adc 11> ,
>     > +		<&adc 12> , <&adc 13> , <&adc 14> , <&adc 15> ;
>     > +	};
>     > +};
>     > +
>     > +&fmc {
>     > +	status = "okay";
>     > +	flash@0 {
>     > +		status = "okay";
>     > +		m25p,fast-read;
>     > +#include "openbmc-flash-layout.dtsi"
>     > +	};
>     > +};
>     > +
>     > +&spi1 {
>     > +	status = "okay";
>     > +	pinctrl-names = "default";
>     > +	pinctrl-0 = <&pinctrl_spi1_default>;
>     > +	flash@0 {
>     > +		status = "okay";
>     > +		m25p,fast-read;
>     > +		label = "pnor";
>     > +	};
>     > +};
>     > +
>     > +&lpc_snoop {
>     > +	status = "okay";
>     > +	snoop-ports = <0x80>;
>     > +};
> No lpc in Yosemite so please remove.
> 
>     > +
>     > +&lpc_ctrl {
>     > +	// Enable lpc clock
>     > +	status = "okay";
> Same here remove.
>     
>     Something I'm intending to fix in the devicetrees using LPC is to hog
>     the pins in the pinctrl node. You should consider doing the same here.
>     
>     > +};
>     > +
>     > +&vuart {
>     > +	// VUART Host Console
>     > +	status = "okay";
>     > +};
> No Vuart.
> 
>     > +
>     > +&uart1 {
>     > +	// Host Console
>     > +	status = "okay";
>     > +	pinctrl-names = "default";
>     > +	pinctrl-0 = <&pinctrl_txd1_default
>     > +		     &pinctrl_rxd1_default>;
>     > +};
>     > +
>     > +&uart2 {
>     > +	// SoL Host Console
>     > +	status = "okay";
> 
> uart1-4 are all assigned for 4 multiple hosts so define accordingly.  
>     
>     Also needs pinctrl configuration.
>     
>     > +};
>     > +
>     > +&uart3 {
>     > +	// SoL BMC Console
>     > +	status = "okay";
>     
>     Again needs pinctrl.
>     
>     > +};
>     > +
>     > +&uart5 {
>     > +	// BMC Console
>     > +	status = "okay";
>     > +};
>     > +
>     > +&mac0 {
>     > +	status = "okay";
>     > +
>     > +	pinctrl-names = "default";
>     > +	pinctrl-0 = <&pinctrl_rmii1_default>;
>     > +	use-ncsi;
>     > +};
>     > +
>     > +&adc {
>     > +	status = "okay";
>     
>     Strongly suggest adding the pinctrl properties here to ensure
>     exclusive access for the ADC pins.
>     
>     Otherwise it looks reasonable.
>     
>     Andrew
>     
> 
>From 9a17872b5faf2c00ab0b572bac0072e44a3d8b91 Mon Sep 17 00:00:00 2001
From: manikandan-e <manikandan.hcl.ers.epl@xxxxxxxxx>
Date: Thu, 21 Nov 2019 11:57:07 +0530
Subject: [PATCH] ARM: dts: aspeed: Adding Facebook Yosemite V2 BMC

The Yosemite V2 is a facebook multi-node server
platform that host four OCP server. The BMC
in the Yosemite V2 platorm based on AST2500 SoC.

This patch adds linux device tree entry related to
Yosemite V2 specific devices connected to BMC SoC.

Signed-off-by: manikandan-e <manikandan.hcl.ers.epl@xxxxxxxxx>
---
 .../boot/dts/aspeed-bmc-facebook-yosemitev2.dts    | 152 +++++++++++++++++++++
 1 file changed, 152 insertions(+)
 create mode 100644 arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts

diff --git a/arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts b/arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts
new file mode 100644
index 0000000..5f9a2e1
--- /dev/null
+++ b/arch/arm/boot/dts/aspeed-bmc-facebook-yosemitev2.dts
@@ -0,0 +1,152 @@
+// SPDX-License-Identifier: GPL-2.0+
+// Copyright (c) 2018 Facebook Inc.
+/dts-v1/;
+
+#include "aspeed-g5.dtsi"
+#include <dt-bindings/gpio/aspeed-gpio.h>
+
+/ {
+	model = "Facebook Yosemitev2 BMC";
+	compatible = "facebook,yosemitev2-bmc", "aspeed,ast2500";
+	aliases {
+		serial0 = &uart1;
+		serial4 = &uart5;
+	};
+	chosen {
+		stdout-path = &uart5;
+		bootargs = "console=ttyS4,115200 earlyprintk";
+	};
+
+	memory@80000000 {
+		reg = <0x80000000 0x20000000>;
+	};
+
+	iio-hwmon {
+		// VOLATAGE SENSOR
+		compatible = "iio-hwmon";
+		io-channels = <&adc 0> , <&adc 1> , <&adc 2> ,  <&adc 3> ,
+		<&adc 4> , <&adc 5> , <&adc 6> ,  <&adc 7> ,
+		<&adc 8> , <&adc 9> , <&adc 10>, <&adc 11> ,
+		<&adc 12> , <&adc 13> , <&adc 14> , <&adc 15> ;
+	};
+};
+
+&fmc {
+	status = "okay";
+	flash@0 {
+		status = "okay";
+		m25p,fast-read;
+#include "openbmc-flash-layout.dtsi"
+	};
+};
+
+&spi1 {
+	status = "okay";
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_spi1_default>;
+	flash@0 {
+		status = "okay";
+		m25p,fast-read;
+		label = "pnor";
+	};
+};
+
+&uart5 {
+	// BMC Console
+	status = "okay";
+};
+
+&mac0 {
+	status = "okay";
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_rmii1_default>;
+	use-ncsi;
+};
+
+&adc {
+	status = "okay";
+	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
+		&pinctrl_adc8_default
+		&pinctrl_adc9_default
+		&pinctrl_adc10_default
+		&pinctrl_adc11_default
+		&pinctrl_adc12_default
+		&pinctrl_adc13_default
+		&pinctrl_adc14_default
+		&pinctrl_adc15_default>;
+};
+
+&i2c8 {
+	status = "okay";
+	//FRU EEPROM
+	eeprom@51 {
+		compatible = "atmel,24c64";
+		reg = <0x51>;
+		pagesize = <32>;
+	};
+};
+
+&i2c9 {
+	status = "okay";
+	tmp421@4e {
+	//INLET TEMP
+		compatible = "ti,tmp421";
+		reg = <0x4e>;
+	};
+	//OUTLET TEMP
+	tmp421@4f {
+		compatible = "ti,tmp421";
+		reg = <0x4f>;
+	};
+};
+
+&i2c10 {
+	status = "okay";
+	//HSC
+	adm1278@40 {
+		compatible = "adi,adm1278";
+		reg = <0x40>;
+	};
+};
+
+&i2c11 {
+	status = "okay";
+	//MEZZ_TEMP_SENSOR
+	tmp421@1f {
+		compatible = "ti,tmp421";
+		reg = <0x1f>;
+	};
+};
+
+&i2c12 {
+	status = "okay";
+	//MEZZ_FRU
+	eeprom@51 {
+		compatible = "atmel,24c64";
+		reg = <0x51>;
+		pagesize = <32>;
+	};
+};
+
+&pwm_tacho {
+	status = "okay";
+	//FSC
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default>;
+	fan@0 {
+		reg = <0x00>;
+		aspeed,fan-tach-ch = /bits/ 8 <0x00>;
+	};
+	fan@1 {
+		reg = <0x01>;
+		aspeed,fan-tach-ch = /bits/ 8 <0x02>;
+	};
+};
-- 
2.7.4


[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux