configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
PATCH 1/1 configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
Update STM32F469-disco configuration files to operate with new kernel.
Result of make tinyconfig was taken as a starting point to fit kernel into flash memory.
Current setup kernel + rootfs fits in 1.6MB on-chip flash memory
Fixes:
- Move kernel to new flash bank due to growth of dtb size
- Fix kernel start address in bootloader
- Remove outdated path which doesn't affect normal operation mode
--- .../stm32f469-disco/flash.sh | 47 +++- .../stm32f469-disco/linux/defconfig | 120 +++++++++ .../stm32f469-disco/linux/stm32f469-disco.dts | 240 ++++++++++++++++++ .../0002-kernel-start-address.patch | 21 ++ .../patches/afboot-stm32/0003-no-mpu.patch | 22 ++ configs/stm32f469_disco_xip_defconfig | 24 ++ 6 files changed, 465 insertions(+), 9 deletions(-) create mode 100644 board/stmicroelectronics/stm32f469-disco/linux/defconfig create mode 100644 board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts create mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch create mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch create mode 100644 configs/stm32f469_disco_xip_defconfig
board/stmicroelectronics/stm32f469-disco/flash.sh +38 -9
@@ -1,18 +1,47 @@ #!/bin/bash OUTPUT_DIR=$1 +BUILD_TYPE=$2 -if ! test -d "${OUTPUT_DIR}" ; then +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" +if [[ -z "${BUILD_TYPE}" ]] +then + echo "ERROR: no build type specified, please select 'xip' or 'uboot'." + echo "Usage: $0 OUTPUT_DIR $1 BUILD_TYPE" + exit 1 +fi + +case "${BUILD_TYPE}" in + "xip") + ${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/stm32f469i-disco.bin 0x08000000" \ + -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469-disco.dtb 0x08004000" \ + -c "flash write_image erase ${OUTPUT_DIR}/images/xipImage 0x08010000" \ + -c "reset run" \ + -c "shutdown" + ;; + "uboot") + FLASH_COMMAND= + ${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" + ;; + *) + echo "Wrong build type. Please select from: xip, uboot" + ;; +esac
board/stmicroelectronics/stm32f469-disco/linux/defconfig new file +120 -0
120 lines not on this page · raw message
board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts new file +240 -0
240 lines not on this page · raw message
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch new file +21 -0
@@ -0,0 +1,21 @@ +diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c +index 2da1f4b65f..96e4dff65e 100644 +--- a/stm32f469i-disco.c ++++ b/stm32f469i-disco.c +@@ -6,6 +6,7 @@ + #include "gpio.h" + #include "mpu.h" + ++#define KERNEL_ADDR 0x08010000 + #define CONFIG_HSE_HZ 8000000 + #define CONFIG_PLL_M 8 + #define CONFIG_PLL_N 360 +@@ -85,7 +86,7 @@ static void fmc_wait_busy(void) + + void start_kernel(void) + { +- void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(0x08008000 | 1); ++ void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(KERNEL_ADDR | 1); + + kernel(0, ~0UL, 0x08004000); + }
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch new file +22 -0
@@ -0,0 +1,22 @@ +diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c +index d4d0909831..03f823f288 100644 +--- a/stm32f469i-disco.c ++++ b/stm32f469i-disco.c +@@ -127,7 +127,7 @@ int main(void) + + int i; + +- mpu_config(0x0); ++ mpu_config(0xc0000000); + + if (*FLASH_CR & FLASH_CR_LOCK) { + *FLASH_KEYR = 0x45670123; +@@ -229,7 +229,7 @@ int main(void) + usart_setup(usart_base, 45000000); + usart_putch(usart_base, '.'); + +- *SYSCFG_MEMRMP = 0x4; ++ /* *SYSCFG_MEMRMP = 0x4; */ + + start_kernel(); +
configs/stm32f469_disco_xip_defconfig new file +24 -0
@@ -0,0 +1,24 @@ +BR2_arm=y +BR2_cortex_m4=y +BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches" +BR2_KERNEL_HEADERS_5_13=y +# BR2_UCLIBC_INSTALL_UTILS is not set +BR2_GCC_VERSION_11_X=y +BR2_GCC_ENABLE_LTO=y +BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/defconfig" +BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y +BR2_LINUX_KERNEL_XZ=y +BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco" +BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts" +BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" +BR2_PACKAGE_ZLIB=y +BR2_TARGET_ROOTFS_INITRAMFS=y +# BR2_TARGET_ROOTFS_TAR is not set +BR2_TARGET_AFBOOT_STM32=y +BR2_PACKAGE_HOST_OPENOCD=y +BR2_PACKAGE_HOST_UTIL_LINUX=y
Signature · 6 lines
2.32.0 _______________________________________________ buildroot mailing list [email protected] http://lists.busybox.net/mailman/listinfo/buildroot
PATCH v2 1/1 configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
Result of make tinyconfig was taken as a starting point to fit kernel into flash memory.
Current setup kernel + rootfs fits in 1.6MB on-chip flash memory.
Fixes:
- Move kernel to new flash bank due to growth of dtb size
- Fix kernel start address in bootloader
For better binary size optimization gcc LTO is turned on.
----
v1 -> v2:
- Change codestyle in bash scripts
- Use in-tree dts with config fragment
- Update readme.txt
- Remove unnecessary target and host packages from defconfig
---
.../stm32f469-disco/flash.sh | 6 +-
.../linux/{defconfig => linux.config} | 0
...32f469-i-Update-kernel-start-address.patch | 56 +++++++++++++++++++
.../0002-kernel-start-address.patch | 21 -------
.../patches/afboot-stm32/0003-no-mpu.patch | 22 --------
...fault-dram-address-without-remapping.patch | 38 +++++++++++++
.../stm32f469-disco/readme.txt | 26 +++++++--
configs/stm32f469_disco_xip_defconfig | 8 +--
8 files changed, 117 insertions(+), 60 deletions(-)
rename board/stmicroelectronics/stm32f469-disco/linux/{defconfig => linux.config} (100%)
create mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
delete mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch
delete mode 100644 board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch
create mode 100644 board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patchboard/stmicroelectronics/stm32f469-disco/flash.sh +2 -4
@@ -3,15 +3,13 @@ OUTPUT_DIR=$1 BUILD_TYPE=$2 -if ! test -d "${OUTPUT_DIR}" -then +if ! test -d "${OUTPUT_DIR}"; then echo "ERROR: no output directory specified." echo "Usage: $0 OUTPUT_DIR" exit 1 fi -if [[ -z "${BUILD_TYPE}" ]] -then +if [[ -z "${BUILD_TYPE}" ]]; then echo "ERROR: no build type specified, please select 'xip' or 'uboot'." echo "Usage: $0 OUTPUT_DIR $1 BUILD_TYPE" exit 1
board/stmicroelectronics/stm32f469-disco/linux/linux.config renamed from board/stmicroelectronics/stm32f469-disco/linux/defconfig +0 -0
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +56 -0
56 lines not on this page · raw message
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0002-kernel-start-address.patch deleted +0 -21
@@ -1,21 +0,0 @@ -diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c -index 2da1f4b65f..96e4dff65e 100644 ---- a/stm32f469i-disco.c -+++ b/stm32f469i-disco.c -@@ -6,6 +6,7 @@ - #include "gpio.h" - #include "mpu.h" - -+#define KERNEL_ADDR 0x08010000 - #define CONFIG_HSE_HZ 8000000 - #define CONFIG_PLL_M 8 - #define CONFIG_PLL_N 360 -@@ -85,7 +86,7 @@ static void fmc_wait_busy(void) - - void start_kernel(void) - { -- void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(0x08008000 | 1); -+ void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(KERNEL_ADDR | 1); - - kernel(0, ~0UL, 0x08004000); - }
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0003-no-mpu.patch deleted +0 -22
@@ -1,22 +0,0 @@ -diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c -index d4d0909831..03f823f288 100644 ---- a/stm32f469i-disco.c -+++ b/stm32f469i-disco.c -@@ -127,7 +127,7 @@ int main(void) - - int i; - -- mpu_config(0x0); -+ mpu_config(0xc0000000); - - if (*FLASH_CR & FLASH_CR_LOCK) { - *FLASH_KEYR = 0x45670123; -@@ -229,7 +229,7 @@ int main(void) - usart_setup(usart_base, 45000000); - usart_putch(usart_base, '.'); - -- *SYSCFG_MEMRMP = 0x4; -+ /* *SYSCFG_MEMRMP = 0x4; */ - - start_kernel(); -
board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch new file +38 -0
@@ -0,0 +1,38 @@ +From 8ccf9f625d00138d86fb7d70f3efd58a8fb4d7ff Mon Sep 17 00:00:00 2001 +From: Yauheni Saldatsenka <[email protected]> +Date: Mon, 23 Aug 2021 02:54:22 +0300 +Subject: [PATCH] Use default dram address without remapping + +Signed-off-by: Yauheni Saldatsenka <[email protected]> +--- + arch/arm/boot/dts/stm32f469-disco.dts | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/arch/arm/boot/dts/stm32f469-disco.dts b/arch/arm/boot/dts/stm32f469-disco.dts +index 2e1b3bbbe4b5..06845614a19a 100644 +--- a/arch/arm/boot/dts/stm32f469-disco.dts ++++ b/arch/arm/boot/dts/stm32f469-disco.dts +@@ -60,9 +60,9 @@ chosen { + stdout-path = "serial0:115200n8"; + }; + +- memory@00000000 { ++ memory@c0000000 { + device_type = "memory"; +- reg = <0x00000000 0x1000000>; ++ reg = <0xc0000000 0x1000000>; + }; + + aliases { +@@ -84,7 +84,7 @@ vdd_dsi: vdd-dsi { + }; + + soc { +- dma-ranges = <0xc0000000 0x0 0x10000000>; ++ dma-ranges = <0xc0000000 0xc0000000 0x10000000>; + }; + + leds { +-- +2.32.0 +
board/stmicroelectronics/stm32f469-disco/readme.txt +20 -6
@@ -4,23 +4,37 @@ STM32F469 Discovery This tutorial describes how to use the predefined Buildroot configuration for the STM32F469 Discovery evaluation platform. +There are two setups supported: +1. Internal flash memory is fully occupied with u-boot bootloader which boots kernel with + root filesystem from MMC. +2. Internal flash memory stores simple afboot-stm32 bootloader, device tree and + in place (XIP) kernel with built-in initramfs. + Kernel is based on tinyconfig. + Building -------- + Type + "make stm32f469_disco_defconfig" + to build u-boot setup + or + "make stm32f469_disco_xip_defconfig" + to build xip setup + + Then - make stm32f469_disco_defconfig - make + "make" Flashing -------- - ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ + ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ <BUILD_TYPE> -It will flash the U-boot bootloader. + <BUILD_TYPE> can be "xip" or "uboot" -Creating SD card +Creating SD card for u-boot setup ---------------- -Buildroot prepares an"sdcard.img" image in the output/images/ directory, +Buildroot prepares an "sdcard.img" image in the output/images/ directory, ready to be dumped on a SD card. Launch the following command as root: dd if=output/images/sdcard.img of=/dev/<your-sd-device>
configs/stm32f469_disco_xip_defconfig +1 -7
@@ -1,24 +1,18 @@ BR2_arm=y BR2_cortex_m4=y BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches" -BR2_KERNEL_HEADERS_5_13=y # BR2_UCLIBC_INSTALL_UTILS is not set -BR2_GCC_VERSION_11_X=y BR2_GCC_ENABLE_LTO=y -BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y -BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/defconfig" +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/linux.config" BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y BR2_LINUX_KERNEL_XZ=y BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco" -BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts" BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" -BR2_PACKAGE_ZLIB=y BR2_TARGET_ROOTFS_INITRAMFS=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_AFBOOT_STM32=y BR2_PACKAGE_HOST_OPENOCD=y -BR2_PACKAGE_HOST_UTIL_LINUX=y
Signature · 6 lines
2.32.0 _______________________________________________ buildroot mailing list [email protected] http://lists.busybox.net/mailman/listinfo/buildroot
Hi Yauheni,
There were still a number of things not OK with this patch, but I've fixed them
up and applied to next, thanks.
First of all, it should have been only a single commit, not split over 3 for
the different versions. Separate commits should only be made when you do separate, more or less independent things. In this case, however, it's really a single change you're making (adding the new defconfig). So I've squashed everything into a single commit.
Quoted 11 lines · Yauheni Saldatsenka
Result of make tinyconfig was taken as a starting point to fit kernel into flash memory.
Current setup kernel + rootfs fits in 1.6MB on-chip flash memory.Fixes:
- Move kernel to new flash bank due to growth of dtb size
- Fix kernel start address in bootloaderFor better binary size optimization gcc LTO is turned on.
Signed-off-by Yauheni Saldatsenka <[email protected]>
[snip]
board/stmicroelectronics/stm32f469-disco/linux/linux.config
Quoted 4 lines
board/stmicroelectronics/stm32f469-disco/linux/linux.config renamed from board/stmicroelectronics/stm32f469-disco/linux/defconfig +0
-0
linux/linux.config is not a very useful name, so I've moved it up one
directory. I also called it linux-xip.config, to distinguish it more clearly from the existing linux.fragment.
Quoted 6 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +0
-0
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch line 10
Quoted 10 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +10
-0@@ -0,0 +1,56 @@ +From fe5f3a86d07e378baeeddc1dfecd0686d83aa42f Mon Sep 17 00:00:00 2001 +From: Yauheni Saldatsenka <[email protected]> +Date: Sat, 14 Aug 2021 18:54:51 +0300 +Subject: [PATCH] stm32f469-i: Update kernel start address + +As of GNU/Linux v5.12 kernel device tree binary grows above 0x08008000 +and overwrites kernel binary +Therefore this commit moves kernel to the next flash bank + +Signed-off-by: Yauheni Saldatsenka <[email protected]>
Has this patch been sent upstream to afboot-stm32?
Quoted 21 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +21
-0+--- + stm32f469i-disco.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c +index 2da1f4b..46fc06a 100644 +--- a/stm32f469i-disco.c ++++ b/stm32f469i-disco.c +@@ -6,6 +6,7 @@ + #include "gpio.h" + #include "mpu.h" + ++#define KERNEL_ADDR 0x08010000 + #define CONFIG_HSE_HZ 8000000 + #define CONFIG_PLL_M 8 + #define CONFIG_PLL_N 360 +@@ -85,7 +86,7 @@ static void fmc_wait_busy(void) + + void start_kernel(void) + { +- void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(0x08008000 | 1);
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch line 41
Quoted 10 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +10
-0++ void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) = (void (*)(uint32_t, uint32_t, uint32_t))(KERNEL_ADDR | 1); + + kernel(0, ~0UL, 0x08004000); + } +@@ -102,7 +103,7 @@ int main(void) + volatile uint32_t *SYSCFG_MEMRMP = (void *)(SYSCFG_BASE + 0x00); + int i; + +- mpu_config(0x0); ++ mpu_config(0xc0000000);
It's not clear how this is related to moving the kernel address...
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch line 49
Quoted 8 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +8
-0+ + if (*FLASH_CR & FLASH_CR_LOCK) { + *FLASH_KEYR = 0x45670123; +@@ -195,8 +196,6 @@ int main(void) + usart_setup(usart_base, 45000000); + usart_putch(usart_base, '.'); + +- *SYSCFG_MEMRMP = 0x4;
This also is not clear why it's removed.
I still applied the patch as is.
Quoted 6 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +6
-0+- + start_kernel(); + + return 0; +-- +2.32.0
[snip]
Quoted 16 lines
board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch new file +10
-0@@ -0,0 +1,38 @@ +From 8ccf9f625d00138d86fb7d70f3efd58a8fb4d7ff Mon Sep 17 00:00:00 2001 +From: Yauheni Saldatsenka <[email protected]> +Date: Mon, 23 Aug 2021 02:54:22 +0300 +Subject: [PATCH] Use default dram address without remapping + +Signed-off-by: Yauheni Saldatsenka <[email protected]> +--- + arch/arm/boot/dts/stm32f469-disco.dts | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) +
board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch line 20
Quoted 10 lines
board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch new file +10
-0+diff --git a/arch/arm/boot/dts/stm32f469-disco.dts b/arch/arm/boot/dts/stm32f469-disco.dts +index 2e1b3bbbe4b5..06845614a19a 100644 +--- a/arch/arm/boot/dts/stm32f469-disco.dts ++++ b/arch/arm/boot/dts/stm32f469-disco.dts +@@ -60,9 +60,9 @@ chosen { + stdout-path = "serial0:115200n8"; + }; + +- memory@00000000 { ++ memory@c0000000 {
It's good that you update the device tree with a patch now instead of copying
it. However, the full dts was still there in the board directory, but unused. So I removed it.
Also, there were a few changes that you didn't keep - but I guess those weren't
actually needed.
Quoted 23 lines
board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch new file +18
-0+ device_type = "memory"; +- reg = <0x00000000 0x1000000>; ++ reg = <0xc0000000 0x1000000>; + }; + + aliases { +@@ -84,7 +84,7 @@ vdd_dsi: vdd-dsi { + }; + + soc { +- dma-ranges = <0xc0000000 0x0 0x10000000>; ++ dma-ranges = <0xc0000000 0xc0000000 0x10000000>; + }; + + leds { +-- +2.32.0 +board/stmicroelectronics/stm32f469-disco/readme.txt +0
-0
board/stmicroelectronics/stm32f469-disco/readme.txt STM32F469 Discovery · line 11
Quoted 8 lines
board/stmicroelectronics/stm32f469-disco/readme.txt +5
-0@@ -4,23 +4,37 @@ STM32F469 Discovery This tutorial describes how to use the predefined Buildroot configuration for the STM32F469 Discovery evaluation platform. +There are two setups supported: +1. Internal flash memory is fully occupied with u-boot bootloader which boots kernel with + root filesystem from MMC. +2. Internal flash memory stores simple afboot-stm32 bootloader, device tree and + in place (XIP) kernel with built-in initramfs.
Very good readme! I've just added here a sentence to say that no SD card is
needed, to make that explicit.
Regards,
Arnout
Quoted 56 lines
board/stmicroelectronics/stm32f469-disco/readme.txt +15
-6+ Kernel is based on tinyconfig. + Building -------- + Type + "make stm32f469_disco_defconfig" + to build u-boot setup + or + "make stm32f469_disco_xip_defconfig" + to build xip setup + + Then - make stm32f469_disco_defconfig - make + "make" Flashing -------- - ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ + ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ <BUILD_TYPE> -It will flash the U-boot bootloader. + <BUILD_TYPE> can be "xip" or "uboot" -Creating SD card +Creating SD card for u-boot setup ---------------- -Buildroot prepares an"sdcard.img" image in the output/images/ directory, +Buildroot prepares an "sdcard.img" image in the output/images/ directory, ready to be dumped on a SD card. Launch the following command as root: dd if=output/images/sdcard.img of=/dev/<your-sd-device>configs/stm32f469_disco_xip_defconfig +1
-4@@ -1,24 +1,18 @@ BR2_arm=y BR2_cortex_m4=y BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches" -BR2_KERNEL_HEADERS_5_13=y # BR2_UCLIBC_INSTALL_UTILS is not set -BR2_GCC_VERSION_11_X=y BR2_GCC_ENABLE_LTO=y -BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y -BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/defconfig" +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/linux.config" BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y BR2_LINUX_KERNEL_XZ=y BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage"
configs/stm32f469_disco_xip_defconfig line 24
Quoted 10 lines
configs/stm32f469_disco_xip_defconfig +0
-3BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco" -BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts" BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" -BR2_PACKAGE_ZLIB=y BR2_TARGET_ROOTFS_INITRAMFS=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_AFBOOT_STM32=y BR2_PACKAGE_HOST_OPENOCD=y -BR2_PACKAGE_HOST_UTIL_LINUX=y
_______________________________________________
buildroot mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/buildroot
Hello Arnout.
Thanks for bringing your efforts to this patchset!
In case there would be any further questions feel free to ask.
Best regards,
Yauheni Saldatsenka
сб, 28 авг. 2021 г. в 17:57, Arnout Vandecappelle <[email protected]>:
Quoted 269 lines
Hi Yauheni,
There were still a number of things not OK with this patch, but I've
fixed them
up and applied to next, thanks.First of all, it should have been only a single commit, not split over 3
for
the different versions. Separate commits should only be made when you do separate, more or less independent things. In this case, however, it's really a
single change you're making (adding the new defconfig). So I've squashed everything into a single commit.Quoted 11 lines · Yauheni Saldatsenka
Result of make tinyconfig was taken as a starting point to fit kernel into flash memory.
Current setup kernel + rootfs fits in 1.6MB on-chip flash memory.Fixes:
- Move kernel to new flash bank due to growth of dtb size
- Fix kernel start address in bootloaderFor better binary size optimization gcc LTO is turned on.
Signed-off-by Yauheni Saldatsenka <[email protected]>[snip]
Review
Quoted 1 line
(quoted diff) +0
-0
b/board/stmicroelectronics/stm32f469-disco/linux/linux.configQuoted 3 lines
similarity index 100%
rename from board/stmicroelectronics/stm32f469-disco/linux/defconfig rename toboard/stmicroelectronics/stm32f469-disco/linux/linux.config
linux/linux.configis not a very useful name, so I've moved it up one
directory. I also called it linux-xip.config, to distinguish it more clearly
from the existing linux.fragment.Quoted 1 line
diff --git
a/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patchb/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patchQuoted 4 lines
new file mode 100644
index 0000000000..d5d1e5a8ad
---/dev/null
+++
b/board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patchboard/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch line 10
Quoted 11 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +10
-0@@ -0,0 +1,56 @@ +From fe5f3a86d07e378baeeddc1dfecd0686d83aa42f Mon Sep 17 00:00:00 2001 +From: Yauheni Saldatsenka <[email protected]> +Date: Sat, 14 Aug 2021 18:54:51 +0300 +Subject: [PATCH] stm32f469-i: Update kernel start address + +As of GNU/Linux v5.12 kernel device tree binary grows above 0x08008000 +and overwrites kernel binary +Therefore this commit moves kernel to the next flash bank + +Signed-off-by: Yauheni Saldatsenka <[email protected]>Has this patch been sent upstream to afboot-stm32?
Quoted 11 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +11
-0+--- + stm32f469i-disco.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/stm32f469i-disco.c b/stm32f469i-disco.c +index 2da1f4b..46fc06a 100644 +--- a/stm32f469i-disco.c ++++ b/stm32f469i-disco.c +@@ -6,6 +6,7 @@ + #include "gpio.h" + #include "mpu.h"board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch
Quoted 10 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +10
-0+ ++#define KERNEL_ADDR 0x08010000 + #define CONFIG_HSE_HZ 8000000 + #define CONFIG_PLL_M 8 + #define CONFIG_PLL_N 360 +@@ -85,7 +86,7 @@ static void fmc_wait_busy(void) + + void start_kernel(void) + { +- void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) =(void (*)(uint32_t,
uint32_t, uint32_t))(0x08008000 | 1);Review line 32
Quoted 1 line
(quoted diff) +1
-0++ void (*kernel)(uint32_t reserved, uint32_t mach, uint32_t dt) =(void (*)(uint32_t,
uint32_t, uint32_t))(KERNEL_ADDR | 1);board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch line 41
Quoted 9 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +9
-0+ + kernel(0, ~0UL, 0x08004000); + } +@@ -102,7 +103,7 @@ int main(void) + volatile uint32_t *SYSCFG_MEMRMP = (void *)(SYSCFG_BASE + 0x00); + int i; + +- mpu_config(0x0); ++ mpu_config(0xc0000000);It's not clear how this is related to moving the kernel address...
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch line 49
Quoted 8 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +8
-0+ + if (*FLASH_CR & FLASH_CR_LOCK) { + *FLASH_KEYR = 0x45670123; +@@ -195,8 +196,6 @@ int main(void) + usart_setup(usart_base, 45000000); + usart_putch(usart_base, '.'); + +- *SYSCFG_MEMRMP = 0x4;This also is not clear why it's removed.
I still applied the patch as is.
Quoted 6 lines
board/stmicroelectronics/stm32f469-disco/patches/afboot-stm32/0001-stm32f469-i-Update-kernel-start-address.patch new file +6
-0+- + start_kernel(); + + return 0; +-- +2.32.0[snip]
Quoted 1 line
diff --git
a/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patchb/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patchQuoted 4 lines
new file mode 100644
index 0000000000..68fe8380a2
---/dev/null
+++
b/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patchboard/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch line 11
Quoted 12 lines
board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch new file +11
-0@@ -0,0 +1,38 @@ +From 8ccf9f625d00138d86fb7d70f3efd58a8fb4d7ff Mon Sep 17 00:00:00 2001 +From: Yauheni Saldatsenka <[email protected]> +Date: Mon, 23 Aug 2021 02:54:22 +0300 +Subject: [PATCH] Use default dram address without remapping + +Signed-off-by: Yauheni Saldatsenka <[email protected]> +--- + arch/arm/boot/dts/stm32f469-disco.dts | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/arch/arm/boot/dts/stm32f469-disco.dts
b/arch/arm/boot/dts/stm32f469-disco.dtsboard/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch line 20
Quoted 9 lines
board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch new file +9
-0+index 2e1b3bbbe4b5..06845614a19a 100644 +--- a/arch/arm/boot/dts/stm32f469-disco.dts ++++ b/arch/arm/boot/dts/stm32f469-disco.dts +@@ -60,9 +60,9 @@ chosen { + stdout-path = "serial0:115200n8"; + }; + +- memory@00000000 { ++ memory@c0000000 {It's good that you update the device tree with a patch now instead of
copying
it. However, the full dts was still there in the board directory, but unused. So
I removed it.Also, there were a few changes that you didn't keep - but I guess those
weren't
actually needed.Review
Quoted 19 lines
board/stmicroelectronics/stm32f469-disco/patches/linux/0001-Use-default-dram-address-without-remapping.patch new file +18
-0+ device_type = "memory"; +- reg = <0x00000000 0x1000000>; ++ reg = <0xc0000000 0x1000000>; + }; + + aliases { +@@ -84,7 +84,7 @@ vdd_dsi: vdd-dsi { + }; + + soc { +- dma-ranges = <0xc0000000 0x0 0x10000000>; ++ dma-ranges = <0xc0000000 0xc0000000 0x10000000>; + }; + + leds { +-- +2.32.0 +(quoted diff) +0
-0
b/board/stmicroelectronics/stm32f469-disco/readme.txtboard/stmicroelectronics/stm32f469-disco/readme.txt STM32F469 Discovery · line 8
Quoted 9 lines
index
c1e1d30e69..646f340382100644board/stmicroelectronics/stm32f469-disco/readme.txt +2
-0@@ -4,23 +4,37 @@ STM32F469 Discovery This tutorial describes how to use the predefined Buildroot configuration for the STM32F469 Discovery evaluation platform. +There are two setups supported: +1. Internal flash memory is fully occupied with u-boot bootloader whichboots kernel with
board/stmicroelectronics/stm32f469-disco/readme.txt STM32F469 Discovery · line 10
Quoted 2 lines
board/stmicroelectronics/stm32f469-disco/readme.txt +2
-0+ root filesystem from MMC. +2. Internal flash memory stores simple afboot-stm32 bootloader, devicetree and
board/stmicroelectronics/stm32f469-disco/readme.txt STM32F469 Discovery · line 11
Quoted 1 line
board/stmicroelectronics/stm32f469-disco/readme.txt +1
-0+ in place (XIP) kernel with built-in initramfs.Very good readme! I've just added here a sentence to say that no SD card
is
needed, to make that explicit.Regards,
ArnoutQuoted 12 lines
board/stmicroelectronics/stm32f469-disco/readme.txt +10
-0+ Kernel is based on tinyconfig. + Building -------- + Type + "make stm32f469_disco_defconfig" + to build u-boot setup + or + "make stm32f469_disco_xip_defconfig" + to build xip setup + + Thenboard/stmicroelectronics/stm32f469-disco/readme.txt STM32F469 Discovery
Quoted 10 lines
board/stmicroelectronics/stm32f469-disco/readme.txt +2
-3- make stm32f469_disco_defconfig - make + "make" Flashing -------- - ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ + ./board/stmicroelectronics/stm32f469-disco/flash.sh output/<
BUILD_TYPE>board/stmicroelectronics/stm32f469-disco/readme.txt STM32F469 Discovery
Quoted 10 lines
board/stmicroelectronics/stm32f469-disco/readme.txt +3
-3-It will flash the U-boot bootloader. + <BUILD_TYPE> can be "xip" or "uboot" -Creating SD card +Creating SD card for u-boot setup ---------------- -Buildroot prepares an"sdcard.img" image in the output/images/ directory, +Buildroot prepares an "sdcard.img" image in the output/images/directory,
Review
Quoted 4 lines
board/stmicroelectronics/stm32f469-disco/readme.txt +0
-0ready to be dumped on a SD card. Launch the following command as root: dd if=output/images/sdcard.img of=/dev/<your-sd-device>(quoted diff) +0
-0b/configs/stm32f469_disco_xip_defconfig
configs/stm32f469_disco_xip_defconfig line 6
Quoted 12 lines
index
81bdb0d6d6..fd2946ab8b100644configs/stm32f469_disco_xip_defconfig +0
-2@@ -1,24 +1,18 @@ BR2_arm=y BR2_cortex_m4=y BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches" -BR2_KERNEL_HEADERS_5_13=y # BR2_UCLIBC_INSTALL_UTILS is not set -BR2_GCC_VERSION_11_X=y BR2_GCC_ENABLE_LTO=y-BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh"
configs/stm32f469_disco_xip_defconfig
Quoted 3 lines
configs/stm32f469_disco_xip_defconfig +0
-0BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/defconfig"
Quoted 1 line
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f469-disco/linux/linux.config"
Quoted 6 lines
BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y BR2_LINUX_KERNEL_XZ=y BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco"
-BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/stmicroelectronics/stm32f469-disco/linux/stm32f469-disco.dts"
Quoted 9 lines
configs/stm32f469_disco_xip_defconfig line 24
Quoted 8 lines
BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config"
configs/stm32f469_disco_xip_defconfig +0
-2-BR2_PACKAGE_ZLIB=y BR2_TARGET_ROOTFS_INITRAMFS=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_AFBOOT_STM32=y BR2_PACKAGE_HOST_OPENOCD=y -BR2_PACKAGE_HOST_UTIL_LINUX=y
_______________________________________________
buildroot mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/buildroot
PATCH v3 1/1 configs/stm32f469_disco_xip_defconfig: alternative defconfig for XIP
In reply to Yauheni SaldatsenkaResult of make tinyconfig was taken as a starting point to fit kernel into flash memory.
Current setup kernel + rootfs fits in 1.6MB on-chip flash memory.
Fixes:
- Move kernel to new flash bank due to growth of dtb size
- Fix kernel start address in bootloader
For better binary size optimization gcc LTO is turned on.
----
v2 -> v3:
- Create separate readme.txt for xip configuration
- Create separate flash.sh script for xip configuration
--- .../stm32f469-disco/flash.sh | 45 ++++--------------- .../stm32f469-disco/flash_xip.sh | 20 +++++++++ .../stm32f469-disco/readme.txt | 26 +++-------- .../stm32f469-disco/readme_xip.txt | 22 +++++++++ 4 files changed, 57 insertions(+), 56 deletions(-) create mode 100644 board/stmicroelectronics/stm32f469-disco/flash_xip.sh create mode 100644 board/stmicroelectronics/stm32f469-disco/readme_xip.txt
board/stmicroelectronics/stm32f469-disco/flash.sh +9 -36
@@ -1,45 +1,18 @@ #!/bin/bash OUTPUT_DIR=$1 -BUILD_TYPE=$2 -if ! test -d "${OUTPUT_DIR}"; then +if ! test -d "${OUTPUT_DIR}" ; then echo "ERROR: no output directory specified." echo "Usage: $0 OUTPUT_DIR" exit 1 fi -if [[ -z "${BUILD_TYPE}" ]]; then - echo "ERROR: no build type specified, please select 'xip' or 'uboot'." - echo "Usage: $0 OUTPUT_DIR $1 BUILD_TYPE" - exit 1 -fi - -case "${BUILD_TYPE}" in - "xip") - ${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/stm32f469i-disco.bin 0x08000000" \ - -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469-disco.dtb 0x08004000" \ - -c "flash write_image erase ${OUTPUT_DIR}/images/xipImage 0x08010000" \ - -c "reset run" \ - -c "shutdown" - ;; - "uboot") - FLASH_COMMAND= - ${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" - ;; - *) - echo "Wrong build type. Please select from: xip, uboot" - ;; -esac +${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"
board/stmicroelectronics/stm32f469-disco/flash_xip.sh new file +20 -0
@@ -0,0 +1,20 @@ +#!/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/stm32f469i-disco.bin 0x08000000" \ + -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469-disco.dtb 0x08004000" \ + -c "flash write_image erase ${OUTPUT_DIR}/images/xipImage 0x08010000" \ + -c "reset run" \ + -c "shutdown"
board/stmicroelectronics/stm32f469-disco/readme.txt +6 -20
@@ -4,37 +4,23 @@ STM32F469 Discovery This tutorial describes how to use the predefined Buildroot configuration for the STM32F469 Discovery evaluation platform. -There are two setups supported: -1. Internal flash memory is fully occupied with u-boot bootloader which boots kernel with - root filesystem from MMC. -2. Internal flash memory stores simple afboot-stm32 bootloader, device tree and - in place (XIP) kernel with built-in initramfs. - Kernel is based on tinyconfig. - Building -------- - Type - "make stm32f469_disco_defconfig" - to build u-boot setup - or - "make stm32f469_disco_xip_defconfig" - to build xip setup - - Then - "make" + make stm32f469_disco_defconfig + make Flashing -------- - ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ <BUILD_TYPE> + ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ - <BUILD_TYPE> can be "xip" or "uboot" +It will flash the U-boot bootloader. -Creating SD card for u-boot setup +Creating SD card ---------------- -Buildroot prepares an "sdcard.img" image in the output/images/ directory, +Buildroot prepares an"sdcard.img" image in the output/images/ directory, ready to be dumped on a SD card. Launch the following command as root: dd if=output/images/sdcard.img of=/dev/<your-sd-device>
board/stmicroelectronics/stm32f469-disco/readme_xip.txt new file +22 -0
@@ -0,0 +1,22 @@ +STM32F469 Discovery +=================== + +This tutorial describes how to use the predefined Buildroot +configuration for the STM32F469 Discovery evaluation platform. + +Internal flash memory stores simple afboot-stm32 bootloader, device tree and +in place (XIP) kernel with built-in initramfs. +Kernel is based on tinyconfig. + +Building +-------- + + make stm32f469_disco_xip_defconfig + make + +Flashing +-------- + + ./board/stmicroelectronics/stm32f469-disco/flash.sh output/ + +It will flash binary to internal flash memory.
Signature · 6 lines
2.32.0 _______________________________________________ buildroot mailing list [email protected] http://lists.busybox.net/mailman/listinfo/buildroot