diff options
Diffstat (limited to 'arch/arm/lib/board.c')
| -rw-r--r-- | arch/arm/lib/board.c | 7 | 
1 files changed, 6 insertions, 1 deletions
| diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c index 9c72a5353..b770e25d8 100644 --- a/arch/arm/lib/board.c +++ b/arch/arm/lib/board.c @@ -344,7 +344,7 @@ void board_init_f(ulong bootflag)  #if !(defined(CONFIG_SYS_ICACHE_OFF) && defined(CONFIG_SYS_DCACHE_OFF))  	/* reserve TLB table */ -	gd->arch.tlb_size = 4096 * 4; +	gd->arch.tlb_size = PGTABLE_SIZE;  	addr -= gd->arch.tlb_size;  	/* round down to next 64 kB limit */ @@ -419,6 +419,7 @@ void board_init_f(ulong bootflag)  	}  #endif +#ifndef CONFIG_ARM64  	/* setup stackpointer for exeptions */  	gd->irq_sp = addr_sp;  #ifdef CONFIG_USE_IRQ @@ -431,6 +432,10 @@ void board_init_f(ulong bootflag)  	/* 8-byte alignment for ABI compliance */  	addr_sp &= ~0x07; +#else	/* CONFIG_ARM64 */ +	/* 16-byte alignment for ABI compliance */ +	addr_sp &= ~0x0f; +#endif	/* CONFIG_ARM64 */  #else  	addr_sp += 128;	/* leave 32 words for abort-stack   */  	gd->irq_sp = addr_sp; |