configs/stm32f769_disco_sd: fix boot failure after uClibc bump

Since uClibc was bumped to 1.0.58 (c7fef3704c, "package/uclibc:
bump to 1.0.58"), the board hangs after starting init:

    [    1.231624] Run /sbin/init as init process
    [    1.235599]   with arguments:
    [    1.238549]     /sbin/init
    [    1.241331]     earlyprintk
    [    1.244018]   with environment:
    [    1.247143]     HOME=/
    [    1.249554]     TERM=linux
    [    1.252177]     consoleblank=0

No error message is printed and the boot simply stalls at this
point.

The STM32F769 has no MMU, and uClibc's standard malloc()
implementation returns NULL for allocations performed during early
init on this target, causing init to fail.

Fix this by switching to MALLOC_SIMPLE, a plain mmap-based allocator
meant for small/noMMU systems, via a uClibc config fragment. Unlike
the STM32F429/STM32F469 fix, the fragment is kept board-specific
since the STM32F769 is a Cortex-M7 board and does not belong to the
stm32f4xx family.

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
Dario Binacchi
2026-07-21 20:42:46 +02:00
committed by Julien Olivain
parent 832ff692ab
commit dd67de1bd3
2 changed files with 3 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
# MALLOC is not set
MALLOC_SIMPLE=y

View File

@@ -1,6 +1,7 @@
BR2_arm=y
BR2_cortex_m7=y
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
BR2_UCLIBC_CONFIG_FRAGMENT_FILES="board/stmicroelectronics/stm32f769-disco/uclibc-fragment.config"
BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f769-disco/patches"
BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/stm32f769-disco/post-build.sh"