diff options
author | Anup Patel <anup.patel@wdc.com> | 2020-01-16 11:38:49 +0530 |
---|---|---|
committer | Anup Patel <anup@brainfault.org> | 2020-01-22 12:13:34 +0530 |
commit | 37923c4a66180b2f7881d959cd631038e81dbfec (patch) | |
tree | 02b37146d8e63222ae2a7187405b2eb2bdb58c95 /lib/sbi/sbi_init.c | |
parent | 0a411bf717d20a212949af443b275fab9469992f (diff) |
lib: Add dynamic registration of SBI extensions
This patch extends our SBI ecall implementation to allow
dynamic registration of various SBI extensions. Using this
dynamic registration we can break-up SBI ecall implementation
into multiple files and even register experimental/custom
SBI extensions from platform code.
Signed-off-by: Anup Patel <anup.patel@wdc.com>
Reviewed-by: Atish Patra <atish.patra@wdc.com>
Diffstat (limited to 'lib/sbi/sbi_init.c')
-rw-r--r-- | lib/sbi/sbi_init.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/sbi/sbi_init.c b/lib/sbi/sbi_init.c index c5a899c..8baaed4 100644 --- a/lib/sbi/sbi_init.c +++ b/lib/sbi/sbi_init.c @@ -112,6 +112,10 @@ static void __noreturn init_coldboot(struct sbi_scratch *scratch, u32 hartid) if (rc) sbi_hart_hang(); + rc = sbi_ecall_init(); + if (rc) + sbi_hart_hang(); + rc = sbi_system_final_init(scratch, TRUE); if (rc) sbi_hart_hang(); |