diff options
| author | Anup Patel <[email protected]> | 2019-07-01 08:54:13 +0530 |
|---|---|---|
| committer | Anup Patel <[email protected]> | 2019-07-01 08:54:13 +0530 |
| commit | bb3edd36afedc03903930380bef93ed77e83aef8 (patch) | |
| tree | 1b9cf2970ac6f98e7ae6ae72a3b75f30bea9eaa6 | |
| parent | da398ef8d68150e1a22c0f598a0b3b09b61a3ce6 (diff) | |
firmware: For no relocation skip two stage wait for secondary HARTs
When relocation is not required (i.e. _load_start == _link_start), we
can skip two stage wait for secondary HARTs. This means secondary HARTs
can skip the _wait_relocate_copy_done() loop and directly jump to the
_wait_for_boot_hart() loop when no relocation not required.
Signed-off-by: Anup Patel <[email protected]>
| -rw-r--r-- | firmware/fw_base.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/firmware/fw_base.S b/firmware/fw_base.S index 213396a3..706db994 100644 --- a/firmware/fw_base.S +++ b/firmware/fw_base.S @@ -106,6 +106,7 @@ _wait_relocate_copy_done: la t0, _start la t1, _link_start REG_L t1, 0(t1) + beq t0, t1, _wait_for_boot_hart la t2, _boot_status sub t2, t2, t0 add t2, t2, t1 |
