v2026.04 crashing on Marvell Armada 3720
Tom Rini
trini at konsulko.com
Tue May 26 18:07:43 CEST 2026
On Mon, May 25, 2026 at 09:50:50PM -0700, Tony Dinh wrote:
> Hi Ben,
>
> This problem sounds familiar. Perhaps Tom can explain this. I recall a
> patch recently related to DEVRES.
>
> Commit 217cf65
> dm: core: Default to using DEVRES outside of xPL
Looking at:
commit 2e6b5185bd509d5c39bbdf900bf6ac9c12f2ed59
Author: Jamie Gibbons <jamie.gibbons at microchip.com>
Date: Tue Jan 20 15:33:13 2026 +0000
configs: microchip_mpfs_generic: fix boot failure
Recent changes to device resource management (DEVRES) increased early
memory requirements during boot. The previous value was insufficient,
resulting in boot failures. Increase CONFIG_SYS_MALLOC_F_LEN to provide
enough early malloc pool for successful boot and device initialisation.
Signed-off-by: Jamie Gibbons <jamie.gibbons at microchip.com>
diff --git a/configs/microchip_mpfs_generic_defconfig b/configs/microchip_mpfs_generic_defconfig
index 22f67414a7c7..973ed09fa875 100644
--- a/configs/microchip_mpfs_generic_defconfig
+++ b/configs/microchip_mpfs_generic_defconfig
@@ -1,6 +1,6 @@
CONFIG_RISCV=y
CONFIG_SYS_MALLOC_LEN=0x800000
-CONFIG_SYS_MALLOC_F_LEN=0x2000
+CONFIG_SYS_MALLOC_F_LEN=0x2800
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80200000
CONFIG_ENV_SIZE=0x2000
May also help
>
> Added Tom.
>
> All the best,
> Tony
>
> On Sun, May 24, 2026 at 6:21 PM Ben Schneider <ben at bens.haus> wrote:
> >
> > Hi Stefan,
> >
> > On Monday, May 11th, 2026 at 12:45 PM, Tony Dinh <mibodhi at gmail.com> wrote:
> >
> > > Added Stefan (MVEBU SoC maintainer).
> > >
> > > > The first commit to cause problems is actually 217cf65 dm:
> > core: Default to using DEVRES outside of xPL.
> >
> > After a lot of testing, I think I've traced the issue to drivers/pinctrl/mvebu/pinctrl-armada-37xx.c. There are two calls
> > to devm_kzalloc that, when I change to kzalloc and remove the dev
> > argument, my device boots again.
> >
> > --- a/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
> > +++ b/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
> > @@ -523,8 +523,7 @@ static int armada_37xx_fill_func(struct armada_37xx_pinctrl *info)
> > const char **groups;
> > int g;
> >
> > - funcs[n].groups = devm_kzalloc(info->dev, funcs[n].ngroups *
> > - sizeof(*(funcs[n].groups)),
> > + funcs[n].groups = kzalloc(funcs[n].ngroups * sizeof(*(funcs[n].groups)),
> > GFP_KERNEL);
> > if (!funcs[n].groups)
> > return -ENOMEM;
> > @@ -724,7 +723,7 @@ static int armada_37xx_pinctrl_probe(struct udevice *dev)
> > * we allocate functions for number of pins and hope there are
> > * fewer unique functions than pins available
> > */
> > - info->funcs = devm_kzalloc(info->dev, pin_data->nr_pins *
> > + info->funcs = kzalloc(pin_data->nr_pins *
> > sizeof(struct armada_37xx_pmx_func), GFP_KERNEL);
> > if (!info->funcs)
> > return -ENOMEM;
> >
> > I cannot explain why these changes resolve the issue so I'd
> > appreciate if someone more knowledgeable would review.
> > I'm also happy to test other proposed solutions. Thank you!
> >
> > Ben
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20260526/7abbfca4/attachment.sig>
More information about the U-Boot
mailing list