[RFC PATCH 07/12] lib: sbi_domain: print World ID config at boot
Yu-Chien Peter Lin
peter.lin at sifive.com
Mon Jul 20 01:24:17 PDT 2026
On Mon, Jul 13, 2026 at 04:48:00PM -0700, Pawandeep Oza wrote:
> On Fri, Jun 26, 2026 at 3:17 AM Yu-Chien Peter Lin <peter.lin at sifive.com> wrote:
> >
> > Extends sbi_domain_dump() to display World ID configuration
> > (next_wid and next_widlist) for each domain at boot. Provides
> > boot-time diagnostic visibility for debugging and verification.
> >
> > Signed-off-by: Yu-Chien Peter Lin <peter.lin at sifive.com>
> > ---
> > lib/sbi/sbi_domain.c | 26 ++++++++++++++++++++++++++
> > 1 file changed, 26 insertions(+)
> >
> > diff --git a/lib/sbi/sbi_domain.c b/lib/sbi/sbi_domain.c
> > index fa69170b..443aa60b 100644
> > --- a/lib/sbi/sbi_domain.c
> > +++ b/lib/sbi/sbi_domain.c
> > @@ -10,6 +10,7 @@
> > #include <sbi/riscv_asm.h>
> > #include <sbi/sbi_console.h>
> > #include <sbi/sbi_domain.h>
> > +#include <sbi/sbi_hart.h>
> > #include <sbi/sbi_hartmask.h>
> > #include <sbi/sbi_heap.h>
> > #include <sbi/sbi_hsm.h>
> > @@ -608,6 +609,31 @@ void sbi_domain_dump(const struct sbi_domain *dom, const char *suffix)
> > break;
> > }
> >
> > + if (sbi_hart_has_extension(sbi_scratch_thishart_ptr(),
> > + SBI_HART_EXT_SMLWID)) {
> > + if (dom->has_next_wid)
> > + sbi_printf("Domain%d Next Wid %s: %u\n",
> > + dom->index, suffix, dom->next_wid);
> > + else {
> > + struct sbi_scratch *scratch = sbi_scratch_thishart_ptr();
> use local variable to store sbi_scratch_thishart_ptr
Sure, will update.
> > + const struct sbi_hart_features *hf = sbi_hart_features_ptr(scratch);
> > + sbi_printf("Domain%d Next Wid %s: %u (pmwid)\n",
> > + dom->index, suffix, hf->pmwid);
> > + }
> > + } else {
> > + sbi_printf("Domain%d Next Wid %s: unsupported\n",
> > + dom->index, suffix);
> > + }
> > +
> > + if (sbi_hart_has_extension(sbi_scratch_thishart_ptr(),
> > + SBI_HART_EXT_SMWIDDELEG)) {
> > + sbi_printf("Domain%d Next Widlist%s: 0x%" PRIx64 "\n",
> > + dom->index, suffix, dom->next_widlist);
> > + } else {
> > + sbi_printf("Domain%d Next Widlist%s: unsupported\n",
> > + dom->index, suffix);
> > + }
> > +
> > sbi_printf("Domain%d SysReset %s: %s\n",
> > dom->index, suffix, (dom->system_reset_allowed) ? "yes" : "no");
> >
> > --
> > 2.43.7
> >
> >
> > --
> > opensbi mailing list
> > opensbi at lists.infradead.org
> > http://lists.infradead.org/mailman/listinfo/opensbi
More information about the opensbi
mailing list