[PATCH] rpi: Update the naming for bcm2712 SoC RevD naming
Filip Kokosiński
filip.kokosinski at gmail.com
Wed Mar 18 19:46:01 CET 2026
Hi Peter!
I've taken a look at this, and unfortunately - with fdtfile set to
broadcom/bcm2712-d-rpi-5-b.dtb the kernel panics on pinctrl-related symbols:
[ 0.236580] SError Interrupt on CPU2, code 0x00000000be000011 -- SError
[ 0.236586] CPU: 2 UID: 0 PID: 1 Comm: swapper/0 Tainted: G M
6.12.47 #1-NixOS
[ 0.236590] Tainted: [M]=MACHINE_CHECK
[ 0.236591] Hardware name: Raspberry Pi 5 Model B Rev 1.1 (DT)
[ 0.236592] pstate: 804000c9 (Nzcv daIF +PAN -UAO -TCO -DIT -SSBS
BTYPE=--)
[ 0.236595] pc : bcm2712_pull_config_set+0x78/0x120
[ 0.236602] lr : bcm2712_pinconf_set+0x6c/0xe0
[ 0.236605] sp : ffffc00080033ae0
[ 0.236606] x29: ffffc00080033ae0 x28: 0000000000000000 x27:
0000000000000000
[ 0.236609] x26: 0000000000000000 x25: ffffd06fcffb1060 x24:
ffff800104c62a98
[ 0.236611] x23: 0000000000000018 x22: 0000000000000000 x21:
0000000000000122
[ 0.236613] x20: 0000000000000000 x19: ffff800104ced480 x18:
ffffffffffffffff
[ 0.236616] x17: 00000000105916e2 x16: 00000000acf0c9e7 x15:
ffff800101736948
[ 0.236618] x14: ffffc000800337e0 x13: ffff80010173694a x12:
3030306330356437
[ 0.236620] x11: 0000000000000040 x10: ffff800104d13c20 x9 :
ffffd06fcebb4ffc
[ 0.236622] x8 : ffff8001024024a8 x7 : 0000000000000000 x6 :
0000000000000000
[ 0.236624] x5 : ffff800102402480 x4 : 0000000000000001 x3 :
0000000000000018
[ 0.236626] x2 : 0000000000000024 x1 : 0000000000000000 x0 :
0000000000000000
[ 0.236628] Kernel panic - not syncing: Asynchronous SError Interrupt
The `bcm2712d0-rpi-5-b.dts` from downstream kernel seems to change the
pinctrl
node compat to "brcm,bcm2712d0-pinctrl"[1], which then in turn causes the
pinctrl driver to use a different register layout[2]. There are also
other more
minor differences between these two dtses.
I haven't had the time to do more thorough digging, but I've managed to
get my
setup working using the following overlay:
/dts-v1/;
/plugin/;
/ {
compatible = "brcm,bcm2712";
fragment at 0 {
target = <&pinctrl>;
__overlay__ {
compatible = "brcm,bcm2712d0-pinctrl";
reg = <0x7d504100 0x20>;
};
};
fragment at 1 {
target = <&pinctrl_aon>;
__overlay__ {
compatible = "brcm,bcm2712d0-aon-pinctrl";
reg = <0x7d510700 0x1c>;
};
};
fragment at 2 {
target = <&uart10>;
__overlay__ {
interrupts = <0x0 120 0x4>; /* <GIC_SPI 120
IRQ_TYPE_LEVEL_HIGH> /*
};
};
};
1:
https://github.com/raspberrypi/linux/blob/rpi-6.12.y/arch/arm64/boot/dts/broadcom/bcm2712d0-rpi-5-b.dts#L80
2:
https://github.com/raspberrypi/linux/blob/rpi-6.12.y/drivers/pinctrl/bcm/pinctrl-bcm2712.c#L390
Best
FK
More information about the U-Boot
mailing list