9os

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit e9ce4b5143311cb0d25489884aa4afc468b8146f
parent 885b6b8340f34778237edaad965cf63006483be5
Author: Dimitris Papastamos <dimitris.papastamos@arm.com>
Date:   Tue, 16 Oct 2018 22:27:05 +0100

[arm64] Enable interrupts after initializing UART

Change-Id: Ib8e17f03a12db23594ecc59b4dea93d7b223a9df
Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>

Diffstat:
March/arm64/rom-none.c | 5+++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/rom-none.c b/arch/arm64/rom-none.c @@ -22,8 +22,6 @@ main(void *text, void *ram, size_t ramsiz) fp = (struct trapframe *) (bp + bsssiz); fp += NR_NESTED - 1; wr_sp_r(fp); - enaabt(); - isb(); memset(ram, 0, bsssiz); memset(fp, 0, sizeof(*fp)); @@ -32,6 +30,8 @@ main(void *text, void *ram, size_t ramsiz) bss->uartbase = (void *)UARTBASE; uartinit(UARTCLK, UARTBAUDRATE); + enaabt(); + isb(); fp->sp = bp + (ramsiz - 16); fp->elr = rd_rvbar_el3(); @@ -39,6 +39,7 @@ main(void *text, void *ram, size_t ramsiz) printk("romfw: text = %p, ram = %p, ramsiz = 0x%llx\n", text, ram, ramsiz); + swtch(fp); /* * main is not expected to return. If it happens we will