[PATCH v2 0/9] Some improvements on boot sequence

Xiang W wxjstz at 126.com
Fri Jun 20 21:22:48 PDT 2025


This series of patches are some multi-HARTs related optimizations, 
allowing non-coldboot HART to perform more initialization before 
entering HSM wait, and fixing some multi-HARTs expansion related 
issues.

V2 Change:
- Remove unused function sbi_wait_for_non_boot_harts and 
  sbi_signal_non_boot_harts_done
- Keep init_coldboot and init_warm_startup as suggested by anup

Xiang W (9):
  lib: sbi: Implement synchronisation and wait between multiple HARTs
  lib: sbi: Remove wait_for_coldboot and wake_coldboot_harts
  lib: sbi: Add wait operations in some initialization functions
  lib/utils: Make fdt_parse_isa_extensions reentrant
  lib: sbi: Initialize as much as possible on non-coldboot HART
  lib: sbi: Ensure that all Harts complete sbi_hart_init
  lib/utils: Fix Zicntr detection in fdt_cpu_fixup
  lib: sbi: Fix dtbr initialization
  lib: sbi: Add sbi_double_trap_init to init_warm_startup

 include/sbi/sbi_hart.h     |  4 ++++
 include/sbi/sbi_hsm.h      |  3 ++-
 lib/sbi/sbi_dbtr.c         | 32 +++++++++++++++++++++----
 lib/sbi/sbi_ecall_dbtr.c   |  2 +-
 lib/sbi/sbi_fwft.c         |  3 +++
 lib/sbi/sbi_hart.c         | 44 +++++++++++++++++++++++++++++++++-
 lib/sbi/sbi_hsm.c          | 49 ++++++++++++++++----------------------
 lib/sbi/sbi_init.c         | 40 ++++++++++---------------------
 lib/sbi/sbi_ipi.c          |  3 +++
 lib/sbi/sbi_irqchip.c      |  5 +++-
 lib/sbi/sbi_pmu.c          |  3 +++
 lib/sbi/sbi_sse.c          |  3 +++
 lib/sbi/sbi_timer.c        |  3 +++
 lib/sbi/sbi_tlb.c          |  3 +++
 lib/utils/fdt/fdt_fixup.c  | 24 +++++++++++--------
 lib/utils/fdt/fdt_helper.c |  4 ++++
 16 files changed, 150 insertions(+), 75 deletions(-)

-- 
2.47.2




More information about the opensbi mailing list