Hi,
It is a V2, rebased on master branch, for the untitled serie
http://patchwork.ozlabs.org/project/uboot/list/?series=152226
This serie now include the previous patch:
[U-Boot,v3] board_f.c: Insure gd->new_bootstage alignment
http://patchwork.ozlabs.org/patch/1201452/
After this first correction, I remove the stm32mp1 workaround
as the issue of bootstage alignment is solved.
The 4th patch is a complete solution to alignment
(proposed in comment 5 of
http://patchwork.ozlabs.org/patch/1201452/#2327366)
I always align the reserved memory to 16 bytes with a new function
reserve_sp().
This patch causes an issue on ARM 32 bits, as the relocated gd pointer
is not initialized with gd->new_gd as expected in reserve_global_data()
but is hard-coded with
relocated gd = gd->bd - GD_SIZE
{with GD_SIZE = sizeof(struct global_data)}
This issue is solved with the 3rd patch of the serie
arm: set the relocated gd with gd->new_gd
Only tested on STM32MP157C-EV1 board (ARM32 architecture).
Changes in v2:
- import: [U-Boot,v3] board_f.c: Insure gd->new_bootstage alignment
Patrice Chotard (1):
board_f.c: Insure gd->new_bootstage alignment
Patrick Delaunay (3):
Revert "stm32mp1: remove the imply BOOTSTAGE"
arm: set the relocated gd with gd->new_gd
board_f.c: Insure 16 alignment of start_addr_sp and reserved memory
arch/arm/lib/crt0.S | 3 +--
arch/arm/mach-stm32mp/Kconfig | 2 ++
common/board_f.c | 27 ++++++++++++++++++---------
3 files changed, 21 insertions(+), 11 deletions(-)