diff options
Diffstat (limited to 'lib/sbi_hart.c')
-rw-r--r-- | lib/sbi_hart.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/sbi_hart.c b/lib/sbi_hart.c index e8a689e..e12a546 100644 --- a/lib/sbi_hart.c +++ b/lib/sbi_hart.c @@ -304,6 +304,10 @@ void sbi_hart_wait_for_coldboot(struct sbi_scratch *scratch, u32 hartid) if ((sbi_platform_hart_count(plat) <= hartid) || (COLDBOOT_WAIT_BITMAP_SIZE <= hartid)) sbi_hart_hang(); + + /* Set MSIE bit to receive IPI */ + csr_set(mie, MIP_MSIP); + do { spin_lock(&coldboot_wait_bitmap_lock); coldboot_wait_bitmap |= (1UL << hartid); |