* [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts @ 2024-05-13 14:49 Peter Yin 2024-05-13 23:52 ` Andrew Jeffery 0 siblings, 1 reply; 9+ messages in thread From: Peter Yin @ 2024-05-13 14:49 UTC (permalink / raw) To: openbmc, andrew, patrick; +Cc: peteryin.openbmc Initial introduction of Facebook common equipped with Aspeed 2600 BMC SoC. Signed-off-by: Peter Yin <peteryin.openbmc@gmail.com> --- arch/arm/dts/Makefile | 1 + arch/arm/dts/ast2600-fb.dts | 66 +++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 arch/arm/dts/ast2600-fb.dts diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 6f4b4d8a17..3740a4452d 100755 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -686,6 +686,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ ast2600-dcscm.dtb \ ast2600-evb-ecc.dtb \ ast2600-evb.dtb \ + ast2600-fb.dtb \ ast2600-fpga.dtb \ ast2600-greatlakes.dtb \ ast2600-intel.dtb \ diff --git a/arch/arm/dts/ast2600-fb.dts b/arch/arm/dts/ast2600-fb.dts new file mode 100644 index 0000000000..69ff575419 --- /dev/null +++ b/arch/arm/dts/ast2600-fb.dts @@ -0,0 +1,66 @@ +// SPDX-License-Identifier: GPL-2.0+ +// Copyright (c) 2023 Meta Platforms Inc. +/dts-v1/; + +#include "ast2600-u-boot.dtsi" + +/ { + model = "Facebook Common BMC"; + compatible = "facebook,common-bmc", "aspeed,ast2600"; + + memory { + device_type = "memory"; + reg = <0x80000000 0x40000000>; + }; + + chosen { + stdout-path = &uart5; + }; + + aliases { + spi0 = &fmc; + }; + + cpus { + cpu@0 { + clock-frequency = <800000000>; + }; + cpu@1 { + clock-frequency = <800000000>; + }; + }; +}; + +&uart5 { + u-boot,dm-pre-reloc; + status = "okay"; +}; + +&sdrammc { + clock-frequency = <400000000>; +}; + +&fmc { + status = "okay"; + + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_fmcquad_default>; + + flash@0 { + status = "okay"; + spi-max-frequency = <50000000>; + spi-tx-bus-width = <2>; + spi-rx-bus-width = <2>; + }; + + flash@1 { + status = "okay"; + spi-max-frequency = <50000000>; + spi-tx-bus-width = <2>; + spi-rx-bus-width = <2>; + }; +}; + +&hace { + status = "okay"; +}; -- 2.25.1 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts 2024-05-13 14:49 [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts Peter Yin @ 2024-05-13 23:52 ` Andrew Jeffery 2024-05-15 9:41 ` Peter Yin 0 siblings, 1 reply; 9+ messages in thread From: Andrew Jeffery @ 2024-05-13 23:52 UTC (permalink / raw) To: Peter Yin, openbmc, patrick, Joel Stanley On Mon, 2024-05-13 at 22:49 +0800, Peter Yin wrote: > Initial introduction of Facebook common > equipped with Aspeed 2600 BMC SoC. > > Signed-off-by: Peter Yin <peteryin.openbmc@gmail.com> > --- > arch/arm/dts/Makefile | 1 + > arch/arm/dts/ast2600-fb.dts | 66 +++++++++++++++++++++++++++++++++++++ > 2 files changed, 67 insertions(+) > create mode 100644 arch/arm/dts/ast2600-fb.dts > > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > index 6f4b4d8a17..3740a4452d 100755 > --- a/arch/arm/dts/Makefile > +++ b/arch/arm/dts/Makefile > @@ -686,6 +686,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ > ast2600-dcscm.dtb \ > ast2600-evb-ecc.dtb \ > ast2600-evb.dtb \ > + ast2600-fb.dtb \ > ast2600-fpga.dtb \ > ast2600-greatlakes.dtb \ > ast2600-intel.dtb \ > diff --git a/arch/arm/dts/ast2600-fb.dts b/arch/arm/dts/ast2600-fb.dts > new file mode 100644 > index 0000000000..69ff575419 > --- /dev/null > +++ b/arch/arm/dts/ast2600-fb.dts > @@ -0,0 +1,66 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +// Copyright (c) 2023 Meta Platforms Inc. > +/dts-v1/; > + > +#include "ast2600-u-boot.dtsi" > + > +/ { > + model = "Facebook Common BMC"; > + compatible = "facebook,common-bmc", "aspeed,ast2600"; I'm not convinced about "facebook,common-bmc" as a compatible. Is there actually a reason to specify anything here other than "aspeed,ast2600"? Alternatively, perhaps list all the relevant platforms, like the p10bmc dts? ``` $ git grep aspeed,ast2600 arch/arm/dts/ast2600-p10bmc.dts arch/arm/dts/ast2600-p10bmc.dts: compatible = "ibm,everest-bmc", "ibm,rainier-bmc", "ibm,p10bmc", "aspeed,ast2600"; ``` Andrew ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts 2024-05-13 23:52 ` Andrew Jeffery @ 2024-05-15 9:41 ` Peter Yin 2024-05-16 1:00 ` Andrew Jeffery 0 siblings, 1 reply; 9+ messages in thread From: Peter Yin @ 2024-05-15 9:41 UTC (permalink / raw) To: Andrew Jeffery; +Cc: openbmc, Joel Stanley Hi Andrew, Thank you for your reply, Do you mean something like this? compatible = "facebook,harma-bmc", "facebook,minerva-bmc", "aspeed,ast2600"; Thanks, Peter. On Tue, May 14, 2024 at 7:52 AM Andrew Jeffery <andrew@codeconstruct.com.au> wrote: > > On Mon, 2024-05-13 at 22:49 +0800, Peter Yin wrote: > > Initial introduction of Facebook common > > equipped with Aspeed 2600 BMC SoC. > > > > Signed-off-by: Peter Yin <peteryin.openbmc@gmail.com> > > --- > > arch/arm/dts/Makefile | 1 + > > arch/arm/dts/ast2600-fb.dts | 66 +++++++++++++++++++++++++++++++++++++ > > 2 files changed, 67 insertions(+) > > create mode 100644 arch/arm/dts/ast2600-fb.dts > > > > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > > index 6f4b4d8a17..3740a4452d 100755 > > --- a/arch/arm/dts/Makefile > > +++ b/arch/arm/dts/Makefile > > @@ -686,6 +686,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ > > ast2600-dcscm.dtb \ > > ast2600-evb-ecc.dtb \ > > ast2600-evb.dtb \ > > + ast2600-fb.dtb \ > > ast2600-fpga.dtb \ > > ast2600-greatlakes.dtb \ > > ast2600-intel.dtb \ > > diff --git a/arch/arm/dts/ast2600-fb.dts b/arch/arm/dts/ast2600-fb.dts > > new file mode 100644 > > index 0000000000..69ff575419 > > --- /dev/null > > +++ b/arch/arm/dts/ast2600-fb.dts > > @@ -0,0 +1,66 @@ > > +// SPDX-License-Identifier: GPL-2.0+ > > +// Copyright (c) 2023 Meta Platforms Inc. > > +/dts-v1/; > > + > > +#include "ast2600-u-boot.dtsi" > > + > > +/ { > > + model = "Facebook Common BMC"; > > + compatible = "facebook,common-bmc", "aspeed,ast2600"; > > I'm not convinced about "facebook,common-bmc" as a compatible. Is there > actually a reason to specify anything here other than "aspeed,ast2600"? > > Alternatively, perhaps list all the relevant platforms, like the p10bmc > dts? > > ``` > $ git grep aspeed,ast2600 arch/arm/dts/ast2600-p10bmc.dts > arch/arm/dts/ast2600-p10bmc.dts: compatible = "ibm,everest-bmc", "ibm,rainier-bmc", "ibm,p10bmc", "aspeed,ast2600"; > ``` > > Andrew ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts 2024-05-15 9:41 ` Peter Yin @ 2024-05-16 1:00 ` Andrew Jeffery 2024-05-16 2:37 ` Patrick Williams 0 siblings, 1 reply; 9+ messages in thread From: Andrew Jeffery @ 2024-05-16 1:00 UTC (permalink / raw) To: Peter Yin; +Cc: openbmc, Joel Stanley On Wed, 2024-05-15 at 17:41 +0800, Peter Yin wrote: > Hi Andrew, > Thank you for your reply, Do you mean something like this? > compatible = "facebook,harma-bmc", "facebook,minerva-bmc", "aspeed,ast2600"; > Right. It removes the nebulous "common" concept that might be upset by future changes. Andrew ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts 2024-05-16 1:00 ` Andrew Jeffery @ 2024-05-16 2:37 ` Patrick Williams 2024-05-16 23:36 ` Andrew Jeffery 0 siblings, 1 reply; 9+ messages in thread From: Patrick Williams @ 2024-05-16 2:37 UTC (permalink / raw) To: Andrew Jeffery; +Cc: openbmc, Joel Stanley, Peter Yin [-- Attachment #1: Type: text/plain, Size: 828 bytes --] On Thu, May 16, 2024 at 10:30:30AM +0930, Andrew Jeffery wrote: > On Wed, 2024-05-15 at 17:41 +0800, Peter Yin wrote: > > Hi Andrew, > > Thank you for your reply, Do you mean something like this? > > compatible = "facebook,harma-bmc", "facebook,minerva-bmc", "aspeed,ast2600"; > > > > Right. It removes the nebulous "common" concept that might be upset by > future changes. I agree that just "common" is probably not appropriate because this device tree only covers ast2600-based platforms. We are trying to design our BMC hardware such that at a u-boot level, the same device tree can be used for most of our platforms. This is partially so we can avoid having to add new changes for u-boot for every new platform. Should we do something like "facebook,ast2600-standard"? -- Patrick Williams [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts 2024-05-16 2:37 ` Patrick Williams @ 2024-05-16 23:36 ` Andrew Jeffery 2024-05-17 1:19 ` Patrick Williams 0 siblings, 1 reply; 9+ messages in thread From: Andrew Jeffery @ 2024-05-16 23:36 UTC (permalink / raw) To: Patrick Williams; +Cc: openbmc, Joel Stanley, Peter Yin On Wed, 2024-05-15 at 21:37 -0500, Patrick Williams wrote: > On Thu, May 16, 2024 at 10:30:30AM +0930, Andrew Jeffery wrote: > > On Wed, 2024-05-15 at 17:41 +0800, Peter Yin wrote: > > > Hi Andrew, > > > Thank you for your reply, Do you mean something like this? > > > compatible = "facebook,harma-bmc", "facebook,minerva-bmc", "aspeed,ast2600"; > > > > > > > Right. It removes the nebulous "common" concept that might be upset by > > future changes. > > I agree that just "common" is probably not appropriate because this > device tree only covers ast2600-based platforms. > > We are trying to design our BMC hardware such that at a u-boot level, > the same device tree can be used for most of our platforms. > Seems sensible, but does this common design point have a name? Otherwise it feels like a "coincidently similar" relationship, which seems a bit ill-defined. Better to enumerate the specific platforms in that case. > This is > partially so we can avoid having to add new changes for u-boot for every > new platform. Not having to write new drivers or define drastically different devicetrees feels like a useful goal. I don't feel tacking on a new compatible here is particularly onerous (not that it even matters in practice if you select only this specific devicetree in the u-boot build). Just wondering if we can avoid nebulous concepts, and rather keep things concrete. > > Should we do something like "facebook,ast2600-standard"? > I guess I'm trying to guard-rail the discussion from the position of the compatible strings should be documented in the DT schemas. Is this something that would pass review upstream? Andrew ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts 2024-05-16 23:36 ` Andrew Jeffery @ 2024-05-17 1:19 ` Patrick Williams 2024-05-17 1:30 ` Andrew Jeffery 0 siblings, 1 reply; 9+ messages in thread From: Patrick Williams @ 2024-05-17 1:19 UTC (permalink / raw) To: Andrew Jeffery; +Cc: openbmc, Joel Stanley, Peter Yin [-- Attachment #1: Type: text/plain, Size: 3428 bytes --] On Fri, May 17, 2024 at 09:06:54AM +0930, Andrew Jeffery wrote: > On Wed, 2024-05-15 at 21:37 -0500, Patrick Williams wrote: > > > Right. It removes the nebulous "common" concept that might be upset by > > > future changes. > > > > I agree that just "common" is probably not appropriate because this > > device tree only covers ast2600-based platforms. > > > > We are trying to design our BMC hardware such that at a u-boot level, > > the same device tree can be used for most of our platforms. > > > > Seems sensible, but does this common design point have a name? > Otherwise it feels like a "coincidently similar" relationship, which > seems a bit ill-defined. Better to enumerate the specific platforms in > that case. I can make up a name if necessary I guess. > > This is > > partially so we can avoid having to add new changes for u-boot for every > > new platform. > > Not having to write new drivers or define drastically different > devicetrees feels like a useful goal. I don't feel tacking on a new > compatible here is particularly onerous (not that it even matters in > practice if you select only this specific devicetree in the u-boot > build). > > Just wondering if we can avoid nebulous concepts, and rather keep > things concrete. I realize the motivation was lost in what I wrote. We are trying to balance a few constraints, mostly induced by the project itself. 1. The project has a refusal for any u-boot patches in openbmc/openbmc, but we want to have first class support for our machines. 2. The project maintenance of u-boot is in poor shape and no where near the level of response or up-to-dateness of the kernel. The motivation for not wanting to send a new device tree is mainly workaround the poor pick-up rate for any u-boot patch request. Prior to patches dated in March the last time any device tree change was accepted into the openbmc u-boot tree was dated May 2023. There was even a devicetree sent to the mailing list by Joel himself that isn't in the tree right now. Our experience has been bad enough that we've taken to just reusing the `ast2600-bletchley` or `ast2600-evb` on multiple platforms, depending on what we can get working. It seems to me [slightly] better to reuse a tree with a generic / common name than to confusingly use `bletchley` on multiple platforms, hence the proposal here. In meta-facebook: ``` $ rg UBOOT_DEVICETREE | sed "s/.*://" | sort | uniq -c 2 UBOOT_DEVICETREE = "ast2500-evb" 3 UBOOT_DEVICETREE = "ast2600-bletchley" 2 UBOOT_DEVICETREE = "ast2600-evb" ``` I don't currently have a lot of faith that if we sent a trivial "add the new compatible" that it would be accepted in a timely manner. > > > > Should we do something like "facebook,ast2600-standard"? > > > > I guess I'm trying to guard-rail the discussion from the position of > the compatible strings should be documented in the DT schemas. Is this > something that would pass review upstream? I don't know? We're so far removed from upstream at this point that I see that as aspirational. (Everyone using AST2600 is using u-boot 2019.04, which was 5 years ago.) Having said all this, I would love to do things as "right" as possible while still being able to make progress. What is the right step? -- Patrick Williams [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts 2024-05-17 1:19 ` Patrick Williams @ 2024-05-17 1:30 ` Andrew Jeffery 2024-05-17 1:59 ` Patrick Williams 0 siblings, 1 reply; 9+ messages in thread From: Andrew Jeffery @ 2024-05-17 1:30 UTC (permalink / raw) To: Patrick Williams; +Cc: openbmc, Joel Stanley, Peter Yin On Thu, 2024-05-16 at 20:19 -0500, Patrick Williams wrote: > > I don't currently have a lot of faith that if we sent a trivial "add the > new compatible" that it would be accepted in a timely manner. Well, I'm responding to the patch because I intend to help you get it merged. I'm trying to keep on top of the patches people send these days. Can we give it a chance? > > > > > > > Should we do something like "facebook,ast2600-standard"? > > > > > > > I guess I'm trying to guard-rail the discussion from the position of > > the compatible strings should be documented in the DT schemas. Is this > > something that would pass review upstream? > > I don't know? We're so far removed from upstream at this point that I > see that as aspirational. (Everyone using AST2600 is using u-boot > 2019.04, which was 5 years ago.) Sure, the tree is not in good shape. However, that doesn't mean we should go adding fuel to the fire? > > Having said all this, I would love to do things as "right" as possible > while still being able to make progress. What is the right step? > That's what I'm trying to figure out in this discussion :) Currently my thought is "better to keep things concrete and describe actual platforms", rather than "make up a name for something that vaguely exists only in principle". I asked about upstream because that allows you to escape my thoughts and drive the patch through on someone else's acceptance of your proposal :) Andrew ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts 2024-05-17 1:30 ` Andrew Jeffery @ 2024-05-17 1:59 ` Patrick Williams 0 siblings, 0 replies; 9+ messages in thread From: Patrick Williams @ 2024-05-17 1:59 UTC (permalink / raw) To: Andrew Jeffery; +Cc: openbmc, Joel Stanley, Peter Yin [-- Attachment #1: Type: text/plain, Size: 608 bytes --] On Fri, May 17, 2024 at 11:00:08AM +0930, Andrew Jeffery wrote: > On Thu, 2024-05-16 at 20:19 -0500, Patrick Williams wrote: > > > > I don't currently have a lot of faith that if we sent a trivial "add the > > new compatible" that it would be accepted in a timely manner. > > Well, I'm responding to the patch because I intend to help you get it > merged. I'm trying to keep on top of the patches people send these > days. Can we give it a chance? Sure, we can give it [another] chance. Peter, please send independent patches for minerva and harma DTSs for u-boot. -- Patrick Williams [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2024-05-17 2:00 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-05-13 14:49 [PATCH u-boot, v2019.04-aspeed-openbmc v1 1/1] ARM: dts: Aspeed: Add Facebook common dts Peter Yin 2024-05-13 23:52 ` Andrew Jeffery 2024-05-15 9:41 ` Peter Yin 2024-05-16 1:00 ` Andrew Jeffery 2024-05-16 2:37 ` Patrick Williams 2024-05-16 23:36 ` Andrew Jeffery 2024-05-17 1:19 ` Patrick Williams 2024-05-17 1:30 ` Andrew Jeffery 2024-05-17 1:59 ` Patrick Williams
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.