mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 19:11:53 +00:00
ARM: add relocation support
!! This breaks support for all arm boards !! To compile in old style, you must define CONFIG_SYS_ARM_WITHOUT_RELOC or you can compile with "CONFIG_SYS_ARM_WITHOUT_RELOC=1 ./MAKEALL board" !! This define will be removed soon, so convert your board to use relocation support Portions of this work were supported by funding from the CE Linux Forum. Signed-off-by: Heiko Schocher <hs@denx.de> Fix boot from NAND for non-ARM systems Signed-off-by: Wolfgang Denk <wd@denx.de>
This commit is contained in:
parent
4fff329df2
commit
f1d2b313c9
13 changed files with 910 additions and 8 deletions
|
@ -38,15 +38,20 @@
|
|||
#include <common.h>
|
||||
#include <asm/proc-armv/ptrace.h>
|
||||
|
||||
#ifdef CONFIG_USE_IRQ
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#ifdef CONFIG_USE_IRQ
|
||||
int interrupt_init (void)
|
||||
{
|
||||
/*
|
||||
* setup up stacks if necessary
|
||||
*/
|
||||
#if !defined(CONFIG_SYS_ARM_WITHOUT_RELOC)
|
||||
IRQ_STACK_START = gd->irq_sp - 4;
|
||||
IRQ_STACK_START_IN = gd->irq_sp + 8;
|
||||
#else
|
||||
IRQ_STACK_START = _armboot_start - CONFIG_SYS_MALLOC_LEN - CONFIG_SYS_GBL_DATA_SIZE - 4;
|
||||
#endif
|
||||
FIQ_STACK_START = IRQ_STACK_START - CONFIG_STACKSIZE_IRQ;
|
||||
|
||||
return arch_interrupt_init();
|
||||
|
@ -81,6 +86,18 @@ int disable_interrupts (void)
|
|||
return (old & 0x80) == 0;
|
||||
}
|
||||
#else
|
||||
#if !defined(CONFIG_SYS_ARM_WITHOUT_RELOC)
|
||||
int interrupt_init (void)
|
||||
{
|
||||
/*
|
||||
* setup up stacks if necessary
|
||||
*/
|
||||
IRQ_STACK_START_IN = gd->irq_sp + 8;
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
void enable_interrupts (void)
|
||||
{
|
||||
return;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue