Fixed boot hart from previous boot stage in Dynamic mode
Is there anyway to always select the boot hart passed from previous boot stage such as U-Boot SPL ?
Previous boot hart passed from SPL (via dynamic data structure): https://github.com/u-boot/u-boot/blob/master/common/spl/spl_opensbi.c#L75
Although the boot hart is passed from SPL to OpenSBI in dynamic mode, but at some point (see the following link) it fall back to lottery way of selecting the boot hart again: https://github.com/riscv-software-src/opensbi/blob/master/firmware/fw_base.S#L420
We have certain use case to always select certain hart ID as boot hart.
Or we can even just provide a way for platform provider to determine which hart ID they want to select as boot hart in their platform code. In other words, OpenSBI allow user to choose either lottery way of selecting boot hart or pre-selected boot hart regardless which mode(Dynamic/Jump/Payload).
Wouldn't it be great ?