[linux,dev-4.13,v5] Add ARM system BMC device tree

Message ID 20180212121047.24831-1-chen.kenyy@inventec.com
State Not Applicable, archived
Headers show
Series
  • [linux,dev-4.13,v5] Add ARM system BMC device tree
Related show

Commit Message

ChenKenYY 陳永營 TAO Feb. 12, 2018, 12:10 p.m.
Centriq2400-rep is ARM system reference evalutiion platform
with ast2520 BMC.

Signed-off-by: Ken Chen <chen.kenyy@inventec.com>

---
v4->v5
- Removed strange whitespace
- Removed aspeed.c commit
- Modify commit content

v3->v4
- Modify Makefile for centriq2400-rep dts
- Fix typo label
- Removed unnecessary define of spi2 and centriq2400-spi-hwmon device
- Removed lpc device
- Fix coding style
- Removed ssif device
- Removed max31790 device
- Removed register control of GPIO and Watchdog
---
 arch/arm/boot/dts/Makefile                         |   1 +
 .../boot/dts/aspeed-bmc-arm-centriq2400-rep.dts    | 276 +++++++++++++++++++++
 2 files changed, 277 insertions(+)
 create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts

Comments

Andrew Jeffery Feb. 16, 2018, 1:54 a.m. | #1
On Mon, 2018-02-12 at 20:10 +0800, Ken Chen wrote:
> Centriq2400-rep is ARM system reference evalutiion platform
> with ast2520 BMC.
> 
> Signed-off-by: Ken Chen <chen.kenyy@inventec.com>

Looked at this from a pinctrl perspective, seems fine.

Acked-by: Andrew Jeffery <andrew@aj.id.au>

> 
> ---
> v4->v5
> - Removed strange whitespace
> - Removed aspeed.c commit
> - Modify commit content
> 
> v3->v4
> - Modify Makefile for centriq2400-rep dts
> - Fix typo label
> - Removed unnecessary define of spi2 and centriq2400-spi-hwmon device
> - Removed lpc device
> - Fix coding style
> - Removed ssif device
> - Removed max31790 device
> - Removed register control of GPIO and Watchdog
> ---
>  arch/arm/boot/dts/Makefile                         |   1 +
>  .../boot/dts/aspeed-bmc-arm-centriq2400-rep.dts    | 276
> +++++++++++++++++++++
>  2 files changed, 277 insertions(+)
>  create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-
> rep.dts
> 
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 7c54fc8..77aef19 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-arm-centriq2400-rep.dtb \
>  	aspeed-ast2500-evb.dtb
>  endif
>  
> diff --git a/arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts
> b/arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts
> new file mode 100644
> index 0000000..b0195e0
> --- /dev/null
> +++ b/arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts
> @@ -0,0 +1,276 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/dts-v1/;
> +
> +#include "aspeed-g5.dtsi"
> +#include <dt-bindings/gpio/aspeed-gpio.h>
> +
> +/ {
> +	model = "Qualcomm Centriq 2400  REP AST2520";
> +	compatible = "qualcomm,centriq2400-rep-bmc",
> "aspeed,ast2500";
> +
> +	chosen {
> +		stdout-path = &uart5;
> +		bootargs = "console=ttyS4,115200 earlyprintk";
> +	};
> +
> +	memory {
> +		reg = <0x80000000 0x40000000>;
> +	};
> +
> +	iio-hwmon {
> +		compatible = "iio-hwmon";
> +		io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc
> 3>,
> +                        <&adc 4>, <&adc 5>, <&adc 6>, <&adc 8>;
> +	};
> +
> +	iio-hwmon-battery {
> +		compatible = "iio-hwmon";
> +		io-channels = <&adc 7>;
> +	};
> +
> +	leds {
> +		compatible = "gpio-leds";
> +
> +		uid_led {
> +			label = "UID_LED";
> +			gpios = <&gpio ASPEED_GPIO(Q, 5)
> GPIO_ACTIVE_LOW>;
> +		};
> +
> +		ras_error_led {
> +			label = "RAS_ERROR_LED";
> +			gpios = <&gpio ASPEED_GPIO(F, 6)
> GPIO_ACTIVE_LOW>;
> +		};
> +
> +		system_fault {
> +			label = "System_fault";
> +			gpios = <&gpio ASPEED_GPIO(A, 1)
> GPIO_ACTIVE_LOW>;
> +		};
> +	};
> +};
> +
> +&fmc {
> +	status = "okay";
> +	flash@0 {
> +		status = "okay";
> +		m25p,fast-read;
> +		label = "bmc";
> +#include "openbmc-flash-layout.dtsi"
> +	};
> +};
> +
> +&spi1 {
> +	status = "okay";
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_spi1_default>;
> +	flash@0 {
> +		status = "okay";
> +	};
> +};
> +
> +&spi2 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_spi2ck_default
> &pinctrl_spi2miso_default &pinctrl_spi2mosi_default
> &pinctrl_spi2cs0_default>;
> +};
> +
> +&uart3 {
> +	status = "okay";
> +
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_txd3_default &pinctrl_rxd3_default>;
> +	current-speed = <115200>;
> +};
> +
> +&uart5 {
> +	status = "okay";
> +};
> +
> +&mac0 {
> +	status = "okay";
> +
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_rgmii1_default
> &pinctrl_mdio1_default>;
> +};
> +
> +&i2c0 {
> +	status = "okay";
> +
> +	pca9542@70 {
> +		compatible = "pca9542";
> +		reg = <0x70>;
> +		i2c@0 {
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +			reg = <0>;
> +			pca9546@77 {
> +				compatible = "pca9546";
> +				reg = <0x77>;
> +				i2c@0 {
> +					#address-cells = <1>;
> +					#size-cells = <0>;
> +					reg = <0>;
> +					eeprom@52 {
> +						compatible =
> "atmel,24c02";
> +						reg = <0x52>;
> +					};
> +				};
> +				i2c@2 {
> +					#address-cells = <1>;
> +					#size-cells = <0>;
> +					reg = <2>;
> +					eeprom@57 {
> +						compatible =
> "atmel,24c02";
> +						reg = <0x57>;
> +					};
> +				};
> +			};
> +		};
> +		i2c@1 {
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +			reg = <1>;
> +			pca9546@77 {
> +				compatible = "pca9546";
> +				reg = <0x77>;
> +				i2c@2 {
> +					#address-cells = <1>;
> +					#size-cells = <0>;
> +					reg = <2>;
> +					eeprom@57 {
> +						compatible =
> "atmel,24c02";
> +						reg = <0x57>;
> +					};
> +				};
> +			};
> +		};
> +
> +        };
> +};
> +
> +&i2c1 {
> +	status = "okay";
> +
> +	tmp421@1e {
> +		compatible = "ti,tmp421";
> +		reg = <0x1e>;
> +	};
> +	tmp421@2a {
> +		compatible = "ti,tmp421";
> +		reg = <0x2a>;
> +	};
> +	tmp421@4e {
> +		compatible = "ti,tmp421";
> +		reg = <0x4e>;
> +	};
> +	tmp421@1c {
> +		compatible = "ti,tmp421";
> +		reg = <0x1c>;
> +	};
> +};
> +
> +&i2c2 {
> +	status = "okay";
> +};
> +
> +&i2c3 {
> +	status = "okay";
> +};
> +
> +&i2c4 {
> +	status = "okay";
> +};
> +
> +&i2c5 {
> +	status = "okay";
> +};
> +
> +&i2c6 {
> +	status = "okay";
> +
> +	tmp421@1d {
> +		compatible = "ti,tmp421";
> +		reg = <0x1d>;
> +	};
> +	tmp421@1f {
> +		compatible = "ti,tmp421";
> +		reg = <0x1f>;
> +	};
> +	tmp421@4d {
> +		compatible = "ti,tmp421";
> +		reg = <0x4d>;
> +	};
> +	tmp421@4f {
> +		compatible = "ti,tmp421";
> +		reg = <0x4f>;
> +	};
> +	nvt210@4c {
> +		compatible = "nvt210";
> +		reg = <0x4c>;
> +	};
> +	eeprom@50 {
> +		compatible = "atmel,24c128";
> +		reg = <0x50>;
> +		pagesize = <128>;
> +	};
> +};
> +
> +&i2c7 {
> +	status = "okay";
> +};
> +
> +&i2c8 {
> +	status = "okay";
> +
> +	pca9641@70 {
> +		compatible = "nxp,pca9641";
> +		reg = <0x70>;
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +		i2c-arb {
> +			tmp421@1d {
> +				compatible = "tmp421";
> +				reg = <0x1d>;
> +			};
> +			adm1278@12 {
> +				compatible = "adi,adm1278";
> +				reg = <0x12>;
> +				Rsense = <500>;
> +			};
> +			eeprom@50 {
> +				compatible = "atmel,24c02";
> +				reg = <0x50>;
> +			};
> +			ds1100@58 {
> +				compatible = "ds1100";
> +				reg = <0x58>;
> +			};
> +		};
> +	};
> +};
> +
> +&i2c9 {
> +	status = "okay";
> +};
> +
> +&vuart {
> +	status = "okay";
> +};
> +
> +&gfx {
> +	status = "okay";
> +};
> +
> +&pinctrl {
> +	aspeed,external-nodes = <&gfx &lhc>;
> +};
> +&wdt2 {
> +	status = "okay";
> +};
> +
> +&gpio {
> +	pin_gpio_c7 {
> +		gpio-hog;
> +		gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
> +		output;
> +		line-name = "BIOS_SPI_MUX_S";
> +	};
> +}
Joel Stanley Feb. 16, 2018, 2:10 a.m. | #2
Hi Ken,

On Mon, Feb 12, 2018 at 10:40 PM, Ken Chen <chen.kenyy@inventec.com> wrote:
> Centriq2400-rep is ARM system reference evalutiion platform
> with ast2520 BMC.

How about:

The Qualcomm Centriq 2400 REP (Reference Evaluation Platform) is
aarch64 Armv8 server platform with an ast2520 BMC.


>
> Signed-off-by: Ken Chen <chen.kenyy@inventec.com>
>
> ---
> v4->v5
> - Removed strange whitespace
> - Removed aspeed.c commit
> - Modify commit content
>
> v3->v4
> - Modify Makefile for centriq2400-rep dts
> - Fix typo label
> - Removed unnecessary define of spi2 and centriq2400-spi-hwmon device
> - Removed lpc device
> - Fix coding style
> - Removed ssif device
> - Removed max31790 device
> - Removed register control of GPIO and Watchdog
> ---
>  arch/arm/boot/dts/Makefile                         |   1 +
>  .../boot/dts/aspeed-bmc-arm-centriq2400-rep.dts    | 276 +++++++++++++++++++++
>  2 files changed, 277 insertions(+)
>  create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 7c54fc8..77aef19 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-arm-centriq2400-rep.dtb \

Nit: we keep these in alphabetical order.

I notice that this patch is against the 4.10 branch. Please rebase
your patch on dev-4.13.

>         aspeed-ast2500-evb.dtb
>  endif
>

> +&gpio {
> +       pin_gpio_c7 {
> +               gpio-hog;
> +               gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
> +               output;
> +               line-name = "BIOS_SPI_MUX_S";
> +       };
> +}

Have you built and booted a kernel using this device tree?

I get an error when building:

Error: arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts:276.2-277.1
syntax error
FATAL ERROR: Unable to parse input tree

Please fix up the missing semicolon, do a build, and ensure this boots
on your system.

When you send v5 you can add the Acked-by line from Andrew to your
commit message.

Cheers,

Joel
Joel Stanley Feb. 16, 2018, 2:16 a.m. | #3
On Fri, Feb 16, 2018 at 12:40 PM, Joel Stanley <joel@jms.id.au> wrote:
> Hi Ken,
>
> On Mon, Feb 12, 2018 at 10:40 PM, Ken Chen <chen.kenyy@inventec.com> wrote:
>> Centriq2400-rep is ARM system reference evalutiion platform
>> with ast2520 BMC.
>
> How about:
>
> The Qualcomm Centriq 2400 REP (Reference Evaluation Platform) is
> aarch64 Armv8 server platform with an ast2520 BMC.
>
>
>>
>> Signed-off-by: Ken Chen <chen.kenyy@inventec.com>
>>
>> ---
>> v4->v5
>> - Removed strange whitespace
>> - Removed aspeed.c commit
>> - Modify commit content
>>
>> v3->v4
>> - Modify Makefile for centriq2400-rep dts
>> - Fix typo label
>> - Removed unnecessary define of spi2 and centriq2400-spi-hwmon device
>> - Removed lpc device
>> - Fix coding style
>> - Removed ssif device
>> - Removed max31790 device
>> - Removed register control of GPIO and Watchdog
>> ---
>>  arch/arm/boot/dts/Makefile                         |   1 +
>>  .../boot/dts/aspeed-bmc-arm-centriq2400-rep.dts    | 276 +++++++++++++++++++++
>>  2 files changed, 277 insertions(+)
>>  create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts
>>
>> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>> index 7c54fc8..77aef19 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-arm-centriq2400-rep.dtb \
>
> Nit: we keep these in alphabetical order.
>
> I notice that this patch is against the 4.10 branch. Please rebase
> your patch on dev-4.13.
>
>>         aspeed-ast2500-evb.dtb
>>  endif
>>
>
>> +&gpio {
>> +       pin_gpio_c7 {
>> +               gpio-hog;
>> +               gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
>> +               output;
>> +               line-name = "BIOS_SPI_MUX_S";
>> +       };
>> +}
>
> Have you built and booted a kernel using this device tree?
>
> I get an error when building:
>
> Error: arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts:276.2-277.1
> syntax error
> FATAL ERROR: Unable to parse input tree
>
> Please fix up the missing semicolon, do a build, and ensure this boots
> on your system.

Please take a look at these warnings too:

  DTC     arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0 has invalid length
(4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@0 has
invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@2 has
invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1 has invalid length
(4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1/pca9546@77/i2c@2 has
invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/tmp421@1d has
invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/adm1278@12 has
invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/eeprom@50 has
invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(reg_format): "reg" property in
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/ds1100@58 has
invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@0
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@0
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@2
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@2
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1/pca9546@77/i2c@2
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1/pca9546@77/i2c@2
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/tmp421@1d
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/tmp421@1d
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/adm1278@12
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/adm1278@12
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/eeprom@50
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/eeprom@50
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #address-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/ds1100@58
arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
(avoid_default_addr_size): Relying on default #size-cells value for
/ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/ds1100@58

>
> When you send v5 you can add the Acked-by line from Andrew to your
> commit message.
>
> Cheers,
>
> Joel
ChenKenYY 陳永營 TAO Feb. 21, 2018, 6 a.m. | #4
Hi Joel,

2018-02-16 10:16 GMT+08:00 Joel Stanley <joel@jms.id.au>:
> On Fri, Feb 16, 2018 at 12:40 PM, Joel Stanley <joel@jms.id.au> wrote:
>> Hi Ken,
>>
>> On Mon, Feb 12, 2018 at 10:40 PM, Ken Chen <chen.kenyy@inventec.com> wrote:
>>> Centriq2400-rep is ARM system reference evalutiion platform
>>> with ast2520 BMC.
>>
>> How about:
>>
>> The Qualcomm Centriq 2400 REP (Reference Evaluation Platform) is
>> aarch64 Armv8 server platform with an ast2520 BMC.
>>
OK!
>>
>>>
>>> Signed-off-by: Ken Chen <chen.kenyy@inventec.com>
>>>
>>> ---
>>> v4->v5
>>> - Removed strange whitespace
>>> - Removed aspeed.c commit
>>> - Modify commit content
>>>
>>> v3->v4
>>> - Modify Makefile for centriq2400-rep dts
>>> - Fix typo label
>>> - Removed unnecessary define of spi2 and centriq2400-spi-hwmon device
>>> - Removed lpc device
>>> - Fix coding style
>>> - Removed ssif device
>>> - Removed max31790 device
>>> - Removed register control of GPIO and Watchdog
>>> ---
>>>  arch/arm/boot/dts/Makefile                         |   1 +
>>>  .../boot/dts/aspeed-bmc-arm-centriq2400-rep.dts    | 276 +++++++++++++++++++++
>>>  2 files changed, 277 insertions(+)
>>>  create mode 100644 arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts
>>>
>>> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>>> index 7c54fc8..77aef19 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-arm-centriq2400-rep.dtb \
>>
>> Nit: we keep these in alphabetical order.
>>
>> I notice that this patch is against the 4.10 branch. Please rebase
>> your patch on dev-4.13.
OK
>>
>>>         aspeed-ast2500-evb.dtb
>>>  endif
>>>
>>
>>> +&gpio {
>>> +       pin_gpio_c7 {
>>> +               gpio-hog;
>>> +               gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
>>> +               output;
>>> +               line-name = "BIOS_SPI_MUX_S";
>>> +       };
>>> +}

here miss a ";".
I will fix it.
>>
>> Have you built and booted a kernel using this device tree?
>>
>> I get an error when building:
>>
>> Error: arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts:276.2-277.1
>> syntax error
>> FATAL ERROR: Unable to parse input tree
>>
>> Please fix up the missing semicolon, do a build, and ensure this boots
>> on your system.
>
> Please take a look at these warnings too:
>
>   DTC     arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0 has invalid length
> (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@0 has
> invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@2 has
> invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1 has invalid length
> (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1/pca9546@77/i2c@2 has
> invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/tmp421@1d has
> invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/adm1278@12 has
> invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/eeprom@50 has
> invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (reg_format): "reg" property in
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/ds1100@58 has
> invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@0
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@0
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@2
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@0/pca9546@77/i2c@2
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1/pca9546@77/i2c@2
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@40/pca9542@70/i2c@1/pca9546@77/i2c@2
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/tmp421@1d
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/tmp421@1d
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/adm1278@12
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/adm1278@12
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/eeprom@50
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/eeprom@50
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #address-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/ds1100@58
> arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dtb: Warning
> (avoid_default_addr_size): Relying on default #size-cells value for
> /ahb/apb/i2c@1e78a000/i2c-bus@340/pca9641@70/i2c-arb/ds1100@58
>
I will remove the device and update the pca9641 drvier in future.
>>
>> When you send v5 you can add the Acked-by line from Andrew to your
>> commit message.
Got it
>>
>> Cheers,
>>
>> Joel

Patch

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 7c54fc8..77aef19 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-arm-centriq2400-rep.dtb \
 	aspeed-ast2500-evb.dtb
 endif
 
diff --git a/arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts b/arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts
new file mode 100644
index 0000000..b0195e0
--- /dev/null
+++ b/arch/arm/boot/dts/aspeed-bmc-arm-centriq2400-rep.dts
@@ -0,0 +1,276 @@ 
+// SPDX-License-Identifier: GPL-2.0+
+/dts-v1/;
+
+#include "aspeed-g5.dtsi"
+#include <dt-bindings/gpio/aspeed-gpio.h>
+
+/ {
+	model = "Qualcomm Centriq 2400  REP AST2520";
+	compatible = "qualcomm,centriq2400-rep-bmc", "aspeed,ast2500";
+
+	chosen {
+		stdout-path = &uart5;
+		bootargs = "console=ttyS4,115200 earlyprintk";
+	};
+
+	memory {
+		reg = <0x80000000 0x40000000>;
+	};
+
+	iio-hwmon {
+		compatible = "iio-hwmon";
+		io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
+                        <&adc 4>, <&adc 5>, <&adc 6>, <&adc 8>;
+	};
+
+	iio-hwmon-battery {
+		compatible = "iio-hwmon";
+		io-channels = <&adc 7>;
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		uid_led {
+			label = "UID_LED";
+			gpios = <&gpio ASPEED_GPIO(Q, 5) GPIO_ACTIVE_LOW>;
+		};
+
+		ras_error_led {
+			label = "RAS_ERROR_LED";
+			gpios = <&gpio ASPEED_GPIO(F, 6) GPIO_ACTIVE_LOW>;
+		};
+
+		system_fault {
+			label = "System_fault";
+			gpios = <&gpio ASPEED_GPIO(A, 1) GPIO_ACTIVE_LOW>;
+		};
+	};
+};
+
+&fmc {
+	status = "okay";
+	flash@0 {
+		status = "okay";
+		m25p,fast-read;
+		label = "bmc";
+#include "openbmc-flash-layout.dtsi"
+	};
+};
+
+&spi1 {
+	status = "okay";
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_spi1_default>;
+	flash@0 {
+		status = "okay";
+	};
+};
+
+&spi2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_spi2ck_default &pinctrl_spi2miso_default &pinctrl_spi2mosi_default &pinctrl_spi2cs0_default>;
+};
+
+&uart3 {
+	status = "okay";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_txd3_default &pinctrl_rxd3_default>;
+	current-speed = <115200>;
+};
+
+&uart5 {
+	status = "okay";
+};
+
+&mac0 {
+	status = "okay";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_rgmii1_default &pinctrl_mdio1_default>;
+};
+
+&i2c0 {
+	status = "okay";
+
+	pca9542@70 {
+		compatible = "pca9542";
+		reg = <0x70>;
+		i2c@0 {
+			#address-cells = <1>;
+			#size-cells = <0>;
+			reg = <0>;
+			pca9546@77 {
+				compatible = "pca9546";
+				reg = <0x77>;
+				i2c@0 {
+					#address-cells = <1>;
+					#size-cells = <0>;
+					reg = <0>;
+					eeprom@52 {
+						compatible = "atmel,24c02";
+						reg = <0x52>;
+					};
+				};
+				i2c@2 {
+					#address-cells = <1>;
+					#size-cells = <0>;
+					reg = <2>;
+					eeprom@57 {
+						compatible = "atmel,24c02";
+						reg = <0x57>;
+					};
+				};
+			};
+		};
+		i2c@1 {
+			#address-cells = <1>;
+			#size-cells = <0>;
+			reg = <1>;
+			pca9546@77 {
+				compatible = "pca9546";
+				reg = <0x77>;
+				i2c@2 {
+					#address-cells = <1>;
+					#size-cells = <0>;
+					reg = <2>;
+					eeprom@57 {
+						compatible = "atmel,24c02";
+						reg = <0x57>;
+					};
+				};
+			};
+		};
+
+        };
+};
+
+&i2c1 {
+	status = "okay";
+
+	tmp421@1e {
+		compatible = "ti,tmp421";
+		reg = <0x1e>;
+	};
+	tmp421@2a {
+		compatible = "ti,tmp421";
+		reg = <0x2a>;
+	};
+	tmp421@4e {
+		compatible = "ti,tmp421";
+		reg = <0x4e>;
+	};
+	tmp421@1c {
+		compatible = "ti,tmp421";
+		reg = <0x1c>;
+	};
+};
+
+&i2c2 {
+	status = "okay";
+};
+
+&i2c3 {
+	status = "okay";
+};
+
+&i2c4 {
+	status = "okay";
+};
+
+&i2c5 {
+	status = "okay";
+};
+
+&i2c6 {
+	status = "okay";
+
+	tmp421@1d {
+		compatible = "ti,tmp421";
+		reg = <0x1d>;
+	};
+	tmp421@1f {
+		compatible = "ti,tmp421";
+		reg = <0x1f>;
+	};
+	tmp421@4d {
+		compatible = "ti,tmp421";
+		reg = <0x4d>;
+	};
+	tmp421@4f {
+		compatible = "ti,tmp421";
+		reg = <0x4f>;
+	};
+	nvt210@4c {
+		compatible = "nvt210";
+		reg = <0x4c>;
+	};
+	eeprom@50 {
+		compatible = "atmel,24c128";
+		reg = <0x50>;
+		pagesize = <128>;
+	};
+};
+
+&i2c7 {
+	status = "okay";
+};
+
+&i2c8 {
+	status = "okay";
+
+	pca9641@70 {
+		compatible = "nxp,pca9641";
+		reg = <0x70>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		i2c-arb {
+			tmp421@1d {
+				compatible = "tmp421";
+				reg = <0x1d>;
+			};
+			adm1278@12 {
+				compatible = "adi,adm1278";
+				reg = <0x12>;
+				Rsense = <500>;
+			};
+			eeprom@50 {
+				compatible = "atmel,24c02";
+				reg = <0x50>;
+			};
+			ds1100@58 {
+				compatible = "ds1100";
+				reg = <0x58>;
+			};
+		};
+	};
+};
+
+&i2c9 {
+	status = "okay";
+};
+
+&vuart {
+	status = "okay";
+};
+
+&gfx {
+	status = "okay";
+};
+
+&pinctrl {
+	aspeed,external-nodes = <&gfx &lhc>;
+};
+&wdt2 {
+	status = "okay";
+};
+
+&gpio {
+	pin_gpio_c7 {
+		gpio-hog;
+		gpios = <ASPEED_GPIO(C, 7) GPIO_ACTIVE_HIGH>;
+		output;
+		line-name = "BIOS_SPI_MUX_S";
+	};
+}