Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4cc2f7a8 authored by Paul Brook's avatar Paul Brook Committed by Russell King
Browse files

[ARM] 4074/1: Flat loader stack alignment



The ARM EABI requires doubleword (8-byte) stack alignment at all public entry
points.  The patch below makes the bFLT loader honour this.
It's always safe to start with a doubleword aligned stack so it doesn't seem
worth making this conditional on CONFIG_AEABI.

Paul

Signed-off-by: default avatarPaul Brook <paul@codesourcery.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 431d2cd9
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -5,7 +5,9 @@
#ifndef __ARM_FLAT_H__
#define __ARM_FLAT_H__

#define	flat_stack_align(sp)			/* nothing needed */
/* An odd number of words will be pushed after this alignment, so
   deliberately misalign the value.  */
#define	flat_stack_align(sp)	sp = (void *)(((unsigned long)(sp) - 4) | 4)
#define	flat_argvp_envp_on_stack()		1
#define	flat_old_ram_flag(flags)		(flags)
#define	flat_reloc_valid(reloc, size)		((reloc) <= (size))