mbox series

[v1,0/2] dts: nuvoton: Add initial yosemitev4 device

Message ID 20240112013654.1424451-1-Delphine_CC_Chiu@wiwynn.com
Headers show
Series dts: nuvoton: Add initial yosemitev4 device | expand

Message

Delphine CC Chiu Jan. 12, 2024, 1:36 a.m. UTC
v1 - Add initial yosemitev4 device for Nuvoton chip

Delphine CC Chiu (2):
  dt-bindings: arm: nuvoton: add Facebook Yosemite 4 board
  ARM64: dts: nuvoton: Add initial yosemitev4 device tree

 .../bindings/arm/nuvoton/nuvoton,npcm.yaml    |    1 +
 arch/arm64/boot/dts/nuvoton/Makefile          |    1 +
 .../dts/nuvoton/nuvoton-npcm845-yosemite4.dts | 1493 +++++++++++++++++
 3 files changed, 1495 insertions(+)
 create mode 100644 arch/arm64/boot/dts/nuvoton/nuvoton-npcm845-yosemite4.dts

Comments

Patrick Williams Jan. 12, 2024, 5:10 p.m. UTC | #1
On Fri, Jan 12, 2024 at 08:10:25AM +0100, Krzysztof Kozlowski wrote:
> On 12/01/2024 02:36, Delphine CC Chiu wrote:
> > Document the new compatibles used on Facebook Yosemite 4.
> 
> There is Yosemite4 board already supported. What is this for?
> https://lore.kernel.org/all/20240109072053.3980855-5-Delphine_CC_Chiu@wiwynn.com/

Yosemite4 is a server chassis which is managed by a BMC.  The BMC is on
a pluggable module card.  Typically we've used Aspeed chips for this,
but we are building an alternative BMC module using Nuvoton BMC chips.

We will end up with two different BMC chips / images that could be
managing the same server hardware.  Since the Aspeed and Nuvoton chips
are different there are unfortunately 2 device trees (one for each chip).

Please let us know if there is a better way to document this.
Patrick Williams Jan. 12, 2024, 5:42 p.m. UTC | #2
On Fri, Jan 12, 2024 at 06:14:26PM +0100, Krzysztof Kozlowski wrote:
> On 12/01/2024 18:10, Patrick Williams wrote:
> > On Fri, Jan 12, 2024 at 08:10:25AM +0100, Krzysztof Kozlowski wrote:
> >> On 12/01/2024 02:36, Delphine CC Chiu wrote:
> >>> Document the new compatibles used on Facebook Yosemite 4.
> >>
> >> There is Yosemite4 board already supported. What is this for?
> >> https://lore.kernel.org/all/20240109072053.3980855-5-Delphine_CC_Chiu@wiwynn.com/
> > 
> > Yosemite4 is a server chassis which is managed by a BMC.  The BMC is on
> > a pluggable module card.  Typically we've used Aspeed chips for this,
> > but we are building an alternative BMC module using Nuvoton BMC chips.
> 
> There are few ways to solve this, like having different compatibles or
> having some shared compatibles to note common part of hardware. However
> usually the final compatible represents the final device, which here you
> use for two entirely different products. This works only for the cases
> of carrier boards, where that compatible indeed represents the same
> hardware.
> 
> Not your case. This needs fixing.

This patch:
+	model = "Facebook Yosemite 4 BMC";
+	compatible = "facebook,yosemite4-n-bmc", "nuvoton,npcm845";

Aspeed patch:
+       model = "Facebook Yosemite 4 BMC";
+       compatible = "facebook,yosemite4-bmc", "aspeed,ast2600";

These have different compatibles already ('-n' for Nuvoton).  Do we just
need the model to be clearly different also?  Maybe there is something
else I'm not understanding.