[PATCH v1 0/2] Update board environment for STM32 MCU's boards

This series: - standardizes the fdt_addr, scriptaddr and pxefile_addr across all STM32 MCU's board. - remove fdt_high and initrd_high from board environment
Patrice Chotard (2): board: stm32: fix extra env setings addresses board: stm32: remove fdt_high and fdt_highinitrd_high
include/configs/stm32f429-evaluation.h | 15 +++++++++------ include/configs/stm32f469-discovery.h | 15 +++++++++------ include/configs/stm32f746-disco.h | 15 +++++++++------ include/configs/stm32h743-disco.h | 14 ++++++++------ include/configs/stm32h743-eval.h | 14 ++++++++------ 5 files changed, 43 insertions(+), 30 deletions(-)

For stm32f4, f7 and h7 boards, reserve: - 4MB for kernel - 64KB for fdt, boot script, pxefile - the remaining memory for ramdisk
Signed-off-by: Patrice Chotard patrice.chotard@st.com ---
include/configs/stm32f429-evaluation.h | 8 ++++---- include/configs/stm32f469-discovery.h | 8 ++++---- include/configs/stm32f746-disco.h | 8 ++++---- include/configs/stm32h743-disco.h | 8 ++++---- include/configs/stm32h743-eval.h | 8 ++++---- 5 files changed, 20 insertions(+), 20 deletions(-)
diff --git a/include/configs/stm32f429-evaluation.h b/include/configs/stm32f429-evaluation.h index 7a17222d7b..f74d027e5d 100644 --- a/include/configs/stm32f429-evaluation.h +++ b/include/configs/stm32f429-evaluation.h @@ -40,12 +40,12 @@ #define CONFIG_EXTRA_ENV_SETTINGS \ "kernel_addr_r=0x00008000\0" \ "fdtfile=stm32429i-eval.dtb\0" \ - "fdt_addr_r=0x00700000\0" \ - "scriptaddr=0x00800000\0" \ - "pxefile_addr_r=0x00800000\0" \ + "fdt_addr_r=0x00408000\0" \ + "scriptaddr=0x00418000\0" \ + "pxefile_addr_r=0x00428000\0" \ + "ramdisk_addr_r=0x00438000\0" \ "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ - "ramdisk_addr_r=0x00900000\0" \ BOOTENV
/* diff --git a/include/configs/stm32f469-discovery.h b/include/configs/stm32f469-discovery.h index 463f1c4396..23ed02ab52 100644 --- a/include/configs/stm32f469-discovery.h +++ b/include/configs/stm32f469-discovery.h @@ -40,12 +40,12 @@ #define CONFIG_EXTRA_ENV_SETTINGS \ "kernel_addr_r=0x00008000\0" \ "fdtfile=stm32f469-disco.dtb\0" \ - "fdt_addr_r=0x00700000\0" \ - "scriptaddr=0x00800000\0" \ - "pxefile_addr_r=0x00800000\0" \ + "fdt_addr_r=0x00408000\0" \ + "scriptaddr=0x00418000\0" \ + "pxefile_addr_r=0x00428000\0" \ + "ramdisk_addr_r=0x00438000\0" \ "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ - "ramdisk_addr_r=0x00900000\0" \ BOOTENV
/* diff --git a/include/configs/stm32f746-disco.h b/include/configs/stm32f746-disco.h index 337b99977b..6d82a9cdd1 100644 --- a/include/configs/stm32f746-disco.h +++ b/include/configs/stm32f746-disco.h @@ -48,12 +48,12 @@ #define CONFIG_EXTRA_ENV_SETTINGS \ "kernel_addr_r=0xC0008000\0" \ "fdtfile=stm32f746-disco.dtb\0" \ - "fdt_addr_r=0xC0500000\0" \ - "scriptaddr=0xC0008000\0" \ - "pxefile_addr_r=0xC0008000\0" \ + "fdt_addr_r=0xC0408000\0" \ + "scriptaddr=0xC0418000\0" \ + "pxefile_addr_r=0xC0428000\0" \ + "ramdisk_addr_r=0xC0438000\0" \ "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ - "ramdisk_addr_r=0xC0600000\0" \ BOOTENV
/* diff --git a/include/configs/stm32h743-disco.h b/include/configs/stm32h743-disco.h index 74c69eba39..312f2916d1 100644 --- a/include/configs/stm32h743-disco.h +++ b/include/configs/stm32h743-disco.h @@ -35,12 +35,12 @@ #define CONFIG_EXTRA_ENV_SETTINGS \ "kernel_addr_r=0xD0008000\0" \ "fdtfile=stm32h743i-disco.dtb\0" \ - "fdt_addr_r=0xD0700000\0" \ - "scriptaddr=0xD0800000\0" \ - "pxefile_addr_r=0xD0800000\0" \ + "fdt_addr_r=0xD0408000\0" \ + "scriptaddr=0xD0418000\0" \ + "pxefile_addr_r=0xD0428000\0" \ + "ramdisk_addr_r=0xD0438000\0" \ "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ - "ramdisk_addr_r=0xD0900000\0" \ BOOTENV
/* diff --git a/include/configs/stm32h743-eval.h b/include/configs/stm32h743-eval.h index b7c84922ab..9f7194ab0b 100644 --- a/include/configs/stm32h743-eval.h +++ b/include/configs/stm32h743-eval.h @@ -35,12 +35,12 @@ #define CONFIG_EXTRA_ENV_SETTINGS \ "kernel_addr_r=0xD0008000\0" \ "fdtfile=stm32h743i-eval.dtb\0" \ - "fdt_addr_r=0xD0700000\0" \ - "scriptaddr=0xD0800000\0" \ - "pxefile_addr_r=0xD0800000\0" \ + "fdt_addr_r=0xD0408000\0" \ + "scriptaddr=0xD0418000\0" \ + "pxefile_addr_r=0xD0428000\0" \ + "ramdisk_addr_r=0xD0438000\0" \ "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ - "ramdisk_addr_r=0xD0900000\0" \ BOOTENV
/*

Hi Patrice,
From: Patrice CHOTARD patrice.chotard@st.com Sent: lundi 3 février 2020 15:11
For stm32f4, f7 and h7 boards, reserve:
- 4MB for kernel
- 64KB for fdt, boot script, pxefile
- the remaining memory for ramdisk
Signed-off-by: Patrice Chotard patrice.chotard@st.com
Reviewed-by: Patrick Delaunay patrick.delaunay@st.com
Thanks,
Patrick

Hi,
From: Patrice CHOTARD patrice.chotard@st.com Sent: lundi 3 février 2020 15:11
For stm32f4, f7 and h7 boards, reserve:
- 4MB for kernel
- 64KB for fdt, boot script, pxefile
- the remaining memory for ramdisk
Signed-off-by: Patrice Chotard patrice.chotard@st.com
Applied to u-boot-stm32/master, thanks!
Regards Patrick

For stm32 f4, f7 and h7 boards, remove fdt_high and initrd_high as they shouldn't be used, this allows the fdt and initrd relocation. This implies to set CONFIG_SYS_BOOTMAPSZ to indicate the amount of memory available to contain kernel, device tree and initrd for relocation.
Signed-off-by: Patrice Chotard patrice.chotard@st.com
---
include/configs/stm32f429-evaluation.h | 7 +++++-- include/configs/stm32f469-discovery.h | 7 +++++-- include/configs/stm32f746-disco.h | 7 +++++-- include/configs/stm32h743-disco.h | 6 ++++-- include/configs/stm32h743-eval.h | 6 ++++-- 5 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/include/configs/stm32f429-evaluation.h b/include/configs/stm32f429-evaluation.h index f74d027e5d..a7150312ca 100644 --- a/include/configs/stm32f429-evaluation.h +++ b/include/configs/stm32f429-evaluation.h @@ -7,6 +7,11 @@ #ifndef __CONFIG_H #define __CONFIG_H
+#include <linux/sizes.h> + +/* For booting Linux, use the first 16MB of memory */ +#define CONFIG_SYS_BOOTMAPSZ SZ_16M + #define CONFIG_SYS_FLASH_BASE 0x08000000
#define CONFIG_SYS_INIT_SP_ADDR 0x10010000 @@ -44,8 +49,6 @@ "scriptaddr=0x00418000\0" \ "pxefile_addr_r=0x00428000\0" \ "ramdisk_addr_r=0x00438000\0" \ - "fdt_high=0xffffffffffffffff\0" \ - "initrd_high=0xffffffffffffffff\0" \ BOOTENV
/* diff --git a/include/configs/stm32f469-discovery.h b/include/configs/stm32f469-discovery.h index 23ed02ab52..8212fb63de 100644 --- a/include/configs/stm32f469-discovery.h +++ b/include/configs/stm32f469-discovery.h @@ -7,6 +7,11 @@ #ifndef __CONFIG_H #define __CONFIG_H
+#include <linux/sizes.h> + +/* For booting Linux, use the first 12MB of memory */ +#define CONFIG_SYS_BOOTMAPSZ SZ_8M + SZ_4M + #define CONFIG_SYS_FLASH_BASE 0x08000000
#define CONFIG_SYS_INIT_SP_ADDR 0x10010000 @@ -44,8 +49,6 @@ "scriptaddr=0x00418000\0" \ "pxefile_addr_r=0x00428000\0" \ "ramdisk_addr_r=0x00438000\0" \ - "fdt_high=0xffffffffffffffff\0" \ - "initrd_high=0xffffffffffffffff\0" \ BOOTENV
/* diff --git a/include/configs/stm32f746-disco.h b/include/configs/stm32f746-disco.h index 6d82a9cdd1..45343d2323 100644 --- a/include/configs/stm32f746-disco.h +++ b/include/configs/stm32f746-disco.h @@ -7,6 +7,11 @@ #ifndef __CONFIG_H #define __CONFIG_H
+#include <linux/sizes.h> + +/* For booting Linux, use the first 6MB of memory */ +#define CONFIG_SYS_BOOTMAPSZ SZ_4M + SZ_2M + #define CONFIG_SYS_FLASH_BASE 0x08000000 #define CONFIG_SYS_INIT_SP_ADDR 0x20050000
@@ -52,8 +57,6 @@ "scriptaddr=0xC0418000\0" \ "pxefile_addr_r=0xC0428000\0" \ "ramdisk_addr_r=0xC0438000\0" \ - "fdt_high=0xffffffffffffffff\0" \ - "initrd_high=0xffffffffffffffff\0" \ BOOTENV
/* diff --git a/include/configs/stm32h743-disco.h b/include/configs/stm32h743-disco.h index 312f2916d1..39c93ee6f9 100644 --- a/include/configs/stm32h743-disco.h +++ b/include/configs/stm32h743-disco.h @@ -8,6 +8,10 @@ #define __CONFIG_H
#include <config.h> +#include <linux/sizes.h> + +/* For booting Linux, use the first 16MB of memory */ +#define CONFIG_SYS_BOOTMAPSZ SZ_16M
#define CONFIG_SYS_FLASH_BASE 0x08000000 #define CONFIG_SYS_INIT_SP_ADDR 0x24040000 @@ -39,8 +43,6 @@ "scriptaddr=0xD0418000\0" \ "pxefile_addr_r=0xD0428000\0" \ "ramdisk_addr_r=0xD0438000\0" \ - "fdt_high=0xffffffffffffffff\0" \ - "initrd_high=0xffffffffffffffff\0" \ BOOTENV
/* diff --git a/include/configs/stm32h743-eval.h b/include/configs/stm32h743-eval.h index 9f7194ab0b..8eb94c1ad4 100644 --- a/include/configs/stm32h743-eval.h +++ b/include/configs/stm32h743-eval.h @@ -8,6 +8,10 @@ #define __CONFIG_H
#include <config.h> +#include <linux/sizes.h> + +/* For booting Linux, use the first 16MB of memory */ +#define CONFIG_SYS_BOOTMAPSZ SZ_16M
#define CONFIG_SYS_FLASH_BASE 0x08000000 #define CONFIG_SYS_INIT_SP_ADDR 0x24040000 @@ -39,8 +43,6 @@ "scriptaddr=0xD0418000\0" \ "pxefile_addr_r=0xD0428000\0" \ "ramdisk_addr_r=0xD0438000\0" \ - "fdt_high=0xffffffffffffffff\0" \ - "initrd_high=0xffffffffffffffff\0" \ BOOTENV
/*

Hi Patrice,
From: Patrice CHOTARD patrice.chotard@st.com Sent: lundi 3 février 2020 15:11
For stm32 f4, f7 and h7 boards, remove fdt_high and initrd_high as they shouldn't be used, this allows the fdt and initrd relocation. This implies to set CONFIG_SYS_BOOTMAPSZ to indicate the amount of memory available to contain kernel, device tree and initrd for relocation.
Signed-off-by: Patrice Chotard patrice.chotard@st.com
Reviewed-by: Patrick Delaunay patrick.delaunay@st.com
Thanks,
Patrick

Hi,
From: Patrice CHOTARD patrice.chotard@st.com Sent: lundi 3 février 2020 15:11
For stm32 f4, f7 and h7 boards, remove fdt_high and initrd_high as they shouldn't be used, this allows the fdt and initrd relocation. This implies to set CONFIG_SYS_BOOTMAPSZ to indicate the amount of memory available to contain kernel, device tree and initrd for relocation.
Signed-off-by: Patrice Chotard patrice.chotard@st.com
Applied to u-boot-stm32/master, thanks!
Regards Patrick
participants (2)
-
Patrice Chotard
-
Patrick DELAUNAY