
15 Sep
2020
15 Sep
'20
10:45 a.m.
Some IPIs may already be pending when U-Boot is started. This could be a problem if a secondary hart tries to handle an IPI before the boot hart has initialized the IPI device.
This commit introduces a valid bit so secondary harts know when and IPI originates from U-boot, and it is safe to use the IPI API. The valid bit is initialized to 0 by board_init_f_init_reserve. Before this, secondary harts wait in wait_for_gd_init.
Signed-off-by: Sean Anderson seanga2@gmail.com
Changes in v2:
- Use a valid bit instead of addr to validate IPIs
arch/riscv/include/asm/smp.h | 7 +++++++ arch/riscv/lib/smp.c | 16 ++++++++++++++-- 2 files changed, 21 insertions(+), 2 deletions(-)
Reviewed-by: Rick Chen rick@andestech.com