diff options
author | Lukas Auer <lukas.auer@aisec.fraunhofer.de> | 2019-12-09 01:28:51 +0300 |
---|---|---|
committer | Andes <uboot@andestech.com> | 2019-12-10 03:23:10 +0300 |
commit | 90ae28143700bae4edd23930a7772899ad259058 (patch) | |
tree | 302fd5ab611f913831da41971eb582270f7295b0 /common | |
parent | 8b3e97badf97d6e399014fb4a152031f8a0c94ba (diff) | |
download | u-boot-90ae28143700bae4edd23930a7772899ad259058.tar.xz |
riscv: add option to wait for ack from secondary harts in smp functions
Add a wait option to smp_call_function() to wait for the secondary harts
to acknowledge the call-function request. The request is considered to
be acknowledged once each secondary hart has cleared the corresponding
IPI.
As part of the call-function request, the secondary harts invalidate the
instruction cache after clearing the IPI. This adds a delay between
acknowledgment (clear IPI) and fulfillment (call function) of the
request. We want to use the acknowledgment to be able to judge when the
request has been completed. Remove the delay by clearing the IPI after
cache invalidation and just before calling the function from the
request.
Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de>
Reviewed-by: Rick Chen <rick@andestech.com>
Tested-by: Rick Chen <rick@andestech.com>
Reviewed-by: Anup Patel <anup.patel@wdc.com>
Diffstat (limited to 'common')
-rw-r--r-- | common/spl/spl_opensbi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/common/spl/spl_opensbi.c b/common/spl/spl_opensbi.c index fed41b1e66..58bf2468ce 100644 --- a/common/spl/spl_opensbi.c +++ b/common/spl/spl_opensbi.c @@ -78,7 +78,7 @@ void spl_invoke_opensbi(struct spl_image_info *spl_image) #ifdef CONFIG_SMP ret = smp_call_function((ulong)spl_image->entry_point, (ulong)spl_image->fdt_addr, - (ulong)&opensbi_info); + (ulong)&opensbi_info, 0); if (ret) hang(); #endif |