* [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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).