As described by [1], the kernel generated by the configuration for the STM32f469 Discovery board is buggy. Using a newer kernel, as suggested by [1], increases the dtb and Kernel image size. In particular, the 5.12 version of the kernel generates a dtb and a kernel image whose sum exceeds the 2 MByte of the flash module. So I decided to replace the afboot-stm32 bootloader in the flash with U-boot to easily boot the system from sdcard without having to worry about the size of dtb, kernel and rootfs generated by the configuration. This solution allows you to fix the kernel boot issue and makes it possible to use its future versions. [1] http://buildroot-busybox.2317881.n4.nabble.com/Bug-11746-New-stm32f469-didn-t-work-correctly-td219644.html Signed-off-by: Dario Binacchi <dariobin@libero.it> Acked-by: Christophe Priouzeau <christophe.priouzeau@foss.st.com> Tested-by: Christophe Priouzeau <christophe.priouzeau@foss.st.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> [Arnout: - specify headers version explicitly, even though it's default; - bump kernel to 5.12.11] (cherry picked from commit 04a0094f0ef0778d1f3c4056ac0005218126147e) Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
19 lines
415 B
Bash
Executable File
19 lines
415 B
Bash
Executable File
#!/bin/bash
|
|
|
|
OUTPUT_DIR=$1
|
|
|
|
if ! test -d "${OUTPUT_DIR}" ; then
|
|
echo "ERROR: no output directory specified."
|
|
echo "Usage: $0 OUTPUT_DIR"
|
|
exit 1
|
|
fi
|
|
|
|
${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
|
|
-c "init" \
|
|
-c "reset init" \
|
|
-c "flash probe 0" \
|
|
-c "flash info 0" \
|
|
-c "flash write_image erase ${OUTPUT_DIR}/images/u-boot.bin 0x08000000" \
|
|
-c "reset run" \
|
|
-c "shutdown"
|