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 | expand |
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"; > + }; > +}
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
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
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
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"; + }; +}
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