Message ID | 20190802041010.1234178-1-taoren@fb.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] ARM: dts: aspeed: Add Facebook Wedge100 BMC | expand |
On Fri, 2 Aug 2019 at 04:10, Tao Ren <taoren@fb.com> wrote: > > Add initial version of device tree for Facebook Wedge100 AST2400 BMC > platform. > > Signed-off-by: Tao Ren <taoren@fb.com> > Reviewed-by: Andrew Jeffery <andrew@aj.id.au> > --- > Changes in v2: > - remove "debug" from bootargs. Thanks. I applied wedge40 and then this one fails to apply due to conflicts in the Makefile. Next time you have two patches, send them as a series they apply one atop the other. The naming of these two files suggests they come from a family. I noticed there's very minor differences, a pca9548 switch and the use of a watchdog. Are these device trees complete? If yes, do you think it's worthwhile to have a common wedge description in eg. aspeed-bmc-facebook-wedge.dtsi, and put the unique description in respective dts board files? The upside of this is reduced duplication. If you have a reason not to, then that is okay and we can leave it as you submitted them. Cheers, Joel --- arch/arm/boot/dts/aspeed-bmc-facebook-wedge100.dts 2019-08-02 13:44:26.536934502 +0930 +++ arch/arm/boot/dts/aspeed-bmc-facebook-wedge40.dts 2019-08-02 13:44:02.980670672 +0930 @@ -5,8 +5,8 @@ #include "aspeed-g4.dtsi" / { - model = "Facebook Wedge 100 BMC"; - compatible = "facebook,wedge100-bmc", "aspeed,ast2400"; + model = "Facebook Wedge 40 BMC"; + compatible = "facebook,wedge40-bmc", "aspeed,ast2400"; aliases { /* @@ -35,8 +35,7 @@ }; &wdt2 { - status = "okay"; - aspeed,reset-type = "system"; + status = "disabled"; }; &fmc { @@ -111,13 +110,6 @@ &i2c7 { status = "okay"; - - i2c-switch@70 { - compatible = "nxp,pca9548"; - #address-cells = <1>; - #size-cells = <0>; - reg = <0x70>; - }; }; > > arch/arm/boot/dts/Makefile | 1 + > .../boot/dts/aspeed-bmc-facebook-wedge100.dts | 149 ++++++++++++++++++ > 2 files changed, 150 insertions(+) > create mode 100644 arch/arm/boot/dts/aspeed-bmc-facebook-wedge100.dts > > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > index 39a05a10a2a2..d71504ed82d3 100644 > --- a/arch/arm/boot/dts/Makefile > +++ b/arch/arm/boot/dts/Makefile > @@ -1273,6 +1273,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ > aspeed-bmc-facebook-cmm.dtb \ > aspeed-bmc-facebook-minipack.dtb \ > aspeed-bmc-facebook-tiogapass.dtb \ > + aspeed-bmc-facebook-wedge100.dtb \ > aspeed-bmc-facebook-yamp.dtb \ > aspeed-bmc-intel-s2600wf.dtb \ > aspeed-bmc-inspur-fp5280g2.dtb \ > diff --git a/arch/arm/boot/dts/aspeed-bmc-facebook-wedge100.dts b/arch/arm/boot/dts/aspeed-bmc-facebook-wedge100.dts > new file mode 100644 > index 000000000000..b1e10f0c85c9 > --- /dev/null > +++ b/arch/arm/boot/dts/aspeed-bmc-facebook-wedge100.dts > @@ -0,0 +1,149 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +// Copyright (c) 2018 Facebook Inc. > +/dts-v1/; > + > +#include "aspeed-g4.dtsi" > + > +/ { > + model = "Facebook Wedge 100 BMC"; > + compatible = "facebook,wedge100-bmc", "aspeed,ast2400"; > + > + aliases { > + /* > + * Override the default uart aliases to avoid breaking > + * the legacy applications. > + */ > + serial0 = &uart5; > + serial1 = &uart1; > + serial2 = &uart3; > + serial3 = &uart4; > + }; > + > + chosen { > + stdout-path = &uart3; > + bootargs = "console=ttyS2,9600n8 root=/dev/ram rw"; > + }; > + > + memory@40000000 { > + reg = <0x40000000 0x20000000>; > + }; > +}; > + > +&wdt1 { > + status = "okay"; > + aspeed,reset-type = "system"; > +}; > + > +&wdt2 { > + status = "okay"; > + aspeed,reset-type = "system"; > +}; > + > +&fmc { > + status = "okay"; > + flash@0 { > + status = "okay"; > + m25p,fast-read; > + label = "fmc0"; > +#include "facebook-bmc-flash-layout.dtsi" > + }; > +}; > + > +&uart1 { > + status = "okay"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_txd1_default > + &pinctrl_rxd1_default>; > +}; > + > +&uart3 { > + status = "okay"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_txd3_default > + &pinctrl_rxd3_default>; > +}; > + > +&uart4 { > + status = "okay"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_txd4_default > + &pinctrl_rxd4_default>; > +}; > + > +&uart5 { > + status = "okay"; > +}; > + > +&mac1 { > + status = "okay"; > + no-hw-checksum; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>; > +}; > + > +&i2c0 { > + status = "okay"; > +}; > + > +&i2c1 { > + status = "okay"; > +}; > + > +&i2c2 { > + status = "okay"; > +}; > + > +&i2c3 { > + status = "okay"; > +}; > + > +&i2c4 { > + status = "okay"; > +}; > + > +&i2c5 { > + status = "okay"; > +}; > + > +&i2c6 { > + status = "okay"; > +}; > + > +&i2c7 { > + status = "okay"; > + > + i2c-switch@70 { > + compatible = "nxp,pca9548"; > + #address-cells = <1>; > + #size-cells = <0>; > + reg = <0x70>; > + }; > +}; > + > +&i2c8 { > + status = "okay"; > +}; > + > +&i2c9 { > + status = "okay"; > +}; > + > +&i2c10 { > + status = "okay"; > +}; > + > +&i2c11 { > + status = "okay"; > +}; > + > +&i2c12 { > + status = "okay"; > +}; > + > +&i2c13 { > + status = "okay"; > +}; > + > +&vhub { > + status = "okay"; > +}; > -- > 2.17.1 >
On 8/1/19, 9:21 PM, "Joel Stanley" <joel@jms.id.au> wrote: > On Fri, 2 Aug 2019 at 04:10, Tao Ren <taoren@fb.com> wrote: >> >> Add initial version of device tree for Facebook Wedge100 AST2400 BMC >> platform. >> >> Signed-off-by: Tao Ren <taoren@fb.com> >> Reviewed-by: Andrew Jeffery <andrew@aj.id.au> >> --- >> Changes in v2: >> - remove "debug" from bootargs. > > Thanks. I applied wedge40 and then this one fails to apply due to > conflicts in the Makefile. Next time you have two patches, send them > as a series they apply one atop the other. I thought about asking you if I should send them as a series although they are logically independent patches.. Sorry about that and I will do so for future patches. > The naming of these two files suggests they come from a family. I > noticed there's very minor differences, a pca9548 switch and the use > of a watchdog. > > Are these device trees complete? If yes, do you think it's worthwhile > to have a common wedge description in eg. > aspeed-bmc-facebook-wedge.dtsi, and put the unique description in > respective dts board files? > > The upside of this is reduced duplication. > > If you have a reason not to, then that is okay and we can leave it as > you submitted them. Thank you for the suggestion. I'm also considering moving common stuff into "dtsi" file, but let me take care of it in a separate patch, mainly because: 1) I have one more BMC platform (galaxy100) which is also similar to wedge. I haven't started the platform, but once I have galaxy100 device tree ready, it would be easier for me to extract common part. 2) the device tree is not complete yet. For example, all the i2c devices are still created from userspace. I'm trying to move the logic from userspace to device tree but I haven't decided what to do with those cpld/fpga devices. Cheers, Tao
On Fri, 2 Aug 2019 at 05:20, Tao Ren <taoren@fb.com> wrote: > > On 8/1/19, 9:21 PM, "Joel Stanley" <joel@jms.id.au> wrote: > > > On Fri, 2 Aug 2019 at 04:10, Tao Ren <taoren@fb.com> wrote: > >> > >> Add initial version of device tree for Facebook Wedge100 AST2400 BMC > >> platform. > >> > >> Signed-off-by: Tao Ren <taoren@fb.com> > >> Reviewed-by: Andrew Jeffery <andrew@aj.id.au> > >> --- > >> Changes in v2: > >> - remove "debug" from bootargs. > > > > Thanks. I applied wedge40 and then this one fails to apply due to > > conflicts in the Makefile. Next time you have two patches, send them > > as a series they apply one atop the other. > > I thought about asking you if I should send them as a series although they are logically independent patches.. > Sorry about that and I will do so for future patches. > > > The naming of these two files suggests they come from a family. I > > noticed there's very minor differences, a pca9548 switch and the use > > of a watchdog. > > > > Are these device trees complete? If yes, do you think it's worthwhile > > to have a common wedge description in eg. > > aspeed-bmc-facebook-wedge.dtsi, and put the unique description in > > respective dts board files? > > > > The upside of this is reduced duplication. > > > > If you have a reason not to, then that is okay and we can leave it as > > you submitted them. > > Thank you for the suggestion. I'm also considering moving common stuff into "dtsi" file, but let me take care of it in a separate patch, mainly because: > 1) I have one more BMC platform (galaxy100) which is also similar to wedge. > I haven't started the platform, but once I have galaxy100 device tree ready, it would be easier for me to extract common part. > 2) the device tree is not complete yet. > For example, all the i2c devices are still created from userspace. > I'm trying to move the logic from userspace to device tree but I haven't decided what to do with those cpld/fpga devices. Okay, thanks. I've applied both of these to the aspeed tree for 5.4. Cheers, Joel
On 8/1/19, 10:26 PM, "Joel Stanley" <joel@jms.id.au> wrote:
> I've applied both of these to the aspeed tree for 5.4.
Thank you Joel.
Cheers,
Tao
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 39a05a10a2a2..d71504ed82d3 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -1273,6 +1273,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ aspeed-bmc-facebook-cmm.dtb \ aspeed-bmc-facebook-minipack.dtb \ aspeed-bmc-facebook-tiogapass.dtb \ + aspeed-bmc-facebook-wedge100.dtb \ aspeed-bmc-facebook-yamp.dtb \ aspeed-bmc-intel-s2600wf.dtb \ aspeed-bmc-inspur-fp5280g2.dtb \ diff --git a/arch/arm/boot/dts/aspeed-bmc-facebook-wedge100.dts b/arch/arm/boot/dts/aspeed-bmc-facebook-wedge100.dts new file mode 100644 index 000000000000..b1e10f0c85c9 --- /dev/null +++ b/arch/arm/boot/dts/aspeed-bmc-facebook-wedge100.dts @@ -0,0 +1,149 @@ +// SPDX-License-Identifier: GPL-2.0+ +// Copyright (c) 2018 Facebook Inc. +/dts-v1/; + +#include "aspeed-g4.dtsi" + +/ { + model = "Facebook Wedge 100 BMC"; + compatible = "facebook,wedge100-bmc", "aspeed,ast2400"; + + aliases { + /* + * Override the default uart aliases to avoid breaking + * the legacy applications. + */ + serial0 = &uart5; + serial1 = &uart1; + serial2 = &uart3; + serial3 = &uart4; + }; + + chosen { + stdout-path = &uart3; + bootargs = "console=ttyS2,9600n8 root=/dev/ram rw"; + }; + + memory@40000000 { + reg = <0x40000000 0x20000000>; + }; +}; + +&wdt1 { + status = "okay"; + aspeed,reset-type = "system"; +}; + +&wdt2 { + status = "okay"; + aspeed,reset-type = "system"; +}; + +&fmc { + status = "okay"; + flash@0 { + status = "okay"; + m25p,fast-read; + label = "fmc0"; +#include "facebook-bmc-flash-layout.dtsi" + }; +}; + +&uart1 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_txd1_default + &pinctrl_rxd1_default>; +}; + +&uart3 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_txd3_default + &pinctrl_rxd3_default>; +}; + +&uart4 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_txd4_default + &pinctrl_rxd4_default>; +}; + +&uart5 { + status = "okay"; +}; + +&mac1 { + status = "okay"; + no-hw-checksum; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>; +}; + +&i2c0 { + status = "okay"; +}; + +&i2c1 { + status = "okay"; +}; + +&i2c2 { + status = "okay"; +}; + +&i2c3 { + status = "okay"; +}; + +&i2c4 { + status = "okay"; +}; + +&i2c5 { + status = "okay"; +}; + +&i2c6 { + status = "okay"; +}; + +&i2c7 { + status = "okay"; + + i2c-switch@70 { + compatible = "nxp,pca9548"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x70>; + }; +}; + +&i2c8 { + status = "okay"; +}; + +&i2c9 { + status = "okay"; +}; + +&i2c10 { + status = "okay"; +}; + +&i2c11 { + status = "okay"; +}; + +&i2c12 { + status = "okay"; +}; + +&i2c13 { + status = "okay"; +}; + +&vhub { + status = "okay"; +};