Devicetree
 help / color / mirror / Atom feed
* [PATCH 0/2] arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible
@ 2026-08-03 10:06 Gregor Herburger
  2026-08-03 10:06 ` [PATCH 1/2] dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping Gregor Herburger
  2026-08-03 10:06 ` [PATCH 2/2] arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible Gregor Herburger
  0 siblings, 2 replies; 4+ messages in thread
From: Gregor Herburger @ 2026-08-03 10:06 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
	Broadcom internal kernel review list, Ray Jui, Scott Branden,
	Eric Anholt, Stefan Wahren
  Cc: devicetree, linux-rpi-kernel, linux-arm-kernel, linux-kernel,
	Gregor Herburger

The bcm2712 found on the Raspberry Pi 5 is available in the d Stepping
and in a c Stepping. There are two separate dts files. The
bcm2712-rpi-5-b.dts for the c Stepping and the bcm2712-d-rpi-5-b.dts for
the d Stepping. The d stepping does not set its own compatible/model
string but uses "raspberrypi,5-model-b".

These two steppings are not compatible. Booting with the wrong dtb file
causes a crash at boot.

Add a compatibles string "raspberrypi,5-model-b-d0" to allow us to
distinguish between those two steppings.

---
Gregor Herburger (2):
      dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping
      arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible

 Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml | 11 +++++++++--
 arch/arm64/boot/dts/broadcom/bcm2712-d-rpi-5-b.dts     |  5 +++++
 2 files changed, 14 insertions(+), 2 deletions(-)
---
base-commit: 8ba098e6b6ff0db8edf28528d1552be261af30d4
change-id: 20260731-bcm2712-d-stepping-compatible-4b40f0c4bda5

Best regards,
--  
Gregor Herburger <gregor.herburger@linutronix.de>


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/2] dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping
  2026-08-03 10:06 [PATCH 0/2] arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible Gregor Herburger
@ 2026-08-03 10:06 ` Gregor Herburger
  2026-08-03 10:15   ` sashiko-bot
  2026-08-03 10:06 ` [PATCH 2/2] arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible Gregor Herburger
  1 sibling, 1 reply; 4+ messages in thread
From: Gregor Herburger @ 2026-08-03 10:06 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
	Broadcom internal kernel review list, Ray Jui, Scott Branden,
	Eric Anholt, Stefan Wahren
  Cc: devicetree, linux-rpi-kernel, linux-arm-kernel, linux-kernel,
	Gregor Herburger

Add the Raspberry Pi 5 d0 Stepping to the schema.

Signed-off-by: Gregor Herburger <gregor.herburger@linutronix.de>
---
 Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml b/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml
index 2729a542c4f3..43729a887f84 100644
--- a/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml
+++ b/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml
@@ -25,8 +25,15 @@ properties:
 
       - description: BCM2712 based Boards
         items:
-          - enum:
-              - raspberrypi,5-model-b
+          oneOf:
+            - enum:
+                - raspberrypi,5-model-b
+            - const: brcm,bcm2712
+
+      - description: BCM2712 based Boards d0 stepping
+        items:
+          - const: raspberrypi,5-model-b-d0
+          - const: raspberrypi,5-model-b
           - const: brcm,bcm2712
 
       - description: BCM2835 based Boards

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 2/2] arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible
  2026-08-03 10:06 [PATCH 0/2] arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible Gregor Herburger
  2026-08-03 10:06 ` [PATCH 1/2] dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping Gregor Herburger
@ 2026-08-03 10:06 ` Gregor Herburger
  1 sibling, 0 replies; 4+ messages in thread
From: Gregor Herburger @ 2026-08-03 10:06 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Florian Fainelli,
	Broadcom internal kernel review list, Ray Jui, Scott Branden,
	Eric Anholt, Stefan Wahren
  Cc: devicetree, linux-rpi-kernel, linux-arm-kernel, linux-kernel,
	Gregor Herburger

The bcm2712 found on the Raspberry Pi 5 is available in the d Stepping
and in a c Stepping. There are two separate dts files. The
bcm2712-rpi-5-b.dts for the c Stepping and the bcm2712-d-rpi-5-b.dts for
the d Stepping. The d stepping does not set its own compatible/model
string but uses "raspberrypi,5-model-b".

These two steppings are not compatible. Booting with the wrong dtb file
causes a crash at boot.

Add a compatibles string "raspberrypi,5-model-b-d0" to allow us to
distinguish between those two steppings.

Signed-off-by: Gregor Herburger <gregor.herburger@linutronix.de>
---
 arch/arm64/boot/dts/broadcom/bcm2712-d-rpi-5-b.dts | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-d-rpi-5-b.dts b/arch/arm64/boot/dts/broadcom/bcm2712-d-rpi-5-b.dts
index 127be0fc27c2..11a38cd53401 100644
--- a/arch/arm64/boot/dts/broadcom/bcm2712-d-rpi-5-b.dts
+++ b/arch/arm64/boot/dts/broadcom/bcm2712-d-rpi-5-b.dts
@@ -3,6 +3,11 @@
 
 #include "bcm2712-rpi-5-b.dts"
 
+/ {
+	compatible = "raspberrypi,5-model-b-d0", "raspberrypi,5-model-b", "brcm,bcm2712";
+	model = "Raspberry Pi 5 d0 Stepping";
+};
+
 &gio_aon {
 	brcm,gpio-bank-widths = <15 6>;
 

-- 
2.47.3


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping
  2026-08-03 10:06 ` [PATCH 1/2] dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping Gregor Herburger
@ 2026-08-03 10:15   ` sashiko-bot
  0 siblings, 0 replies; 4+ messages in thread
From: sashiko-bot @ 2026-08-03 10:15 UTC (permalink / raw)
  To: Gregor Herburger; +Cc: robh, conor+dt, devicetree

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] The `items` constraint for 'BCM2712 based Boards' was incorrectly changed from a positional tuple list to a single `oneOf` object, breaking sequence and length validation. Additionally, the fallback constraint was misplaced.
--

--- Patch [1]: [PATCH 1/2] dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping ---
commit bd4958062ba25329e2f64d01ee33b181fa435216
Author: Gregor Herburger <gregor.herburger@linutronix.de>

dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping

This commit updates the bcm2835 schema to add support for the Raspberry Pi 5
d0 stepping.

> diff --git a/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml b/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml
> index 2729a542c4f35..43729a887f846 100644
> --- a/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml
> +++ b/Documentation/devicetree/bindings/arm/bcm/bcm2835.yaml
> @@ -25,8 +25,15 @@ properties:
>  
>        - description: BCM2712 based Boards
>          items:
> -          - enum:
> -              - raspberrypi,5-model-b
> +          oneOf:
> +            - enum:
> +                - raspberrypi,5-model-b
> +            - const: brcm,bcm2712

[Severity: Medium]
Does this change unintentionally break the strict tuple sequence validation for
the base BCM2712 boards?

By changing the items constraint from a positional tuple list to a single
oneOf object, the schema now applies this oneOf validation independently to
each element in the array. This allows device trees with incorrectly ordered
compatible strings, or those completely missing the fallback string, to
silently pass validation.

> +
> +      - description: BCM2712 based Boards d0 stepping
> +        items:
> +          - const: raspberrypi,5-model-b-d0
> +          - const: raspberrypi,5-model-b
>            - const: brcm,bcm2712

[Severity: Medium]
Is this the original fallback item from the BCM2712 block above?

It appears the original items list was split, causing the fallback
brcm,bcm2712 constant to be absorbed as the third element of the new d0
stepping items block, leaving the original BCM2712 based Boards block without
its fallback item.

>  
>        - description: BCM2835 based Boards

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260803-bcm2712-d-stepping-compatible-v1-0-401934357a44@linutronix.de?part=1

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-08-03 10:15 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-03 10:06 [PATCH 0/2] arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible Gregor Herburger
2026-08-03 10:06 ` [PATCH 1/2] dt-bindings: arm: bcm2835: Add Raspberry Pi 5 d0 Stepping Gregor Herburger
2026-08-03 10:15   ` sashiko-bot
2026-08-03 10:06 ` [PATCH 2/2] arm64: dts: broadcom: bcm2712-d-rpi-5-b: add compatible Gregor Herburger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox