Question regarding "boot-hartid" DT node

Sunil V L sunilvl at
Thu Dec 2 07:05:15 PST 2021

Hi All,
   I am starting this thread to discuss about the "boot-hartid" DT node
   that is being used in RISC-V Linux EFI stub.

   As you know, the boot Hart ID is passed in a0 register to the kernel
   and hence there is actually no need to pass it via DT. However, since
   EFI stub follows EFI application calling conventions, it needs to
   know the boot Hart ID so that it can pass it to the proper kernel via
   a0. For this issue, the solution was to add "/chosen/boot-hartid" in
   DT. Both EDK2 and u-boot append this node in DT.

   But above approach causes issue for ACPI since ACPI initialization
   happens late in the proper kernel. Same is true even if we pass this
   information via SMBIOS.

   Do you have any suggestions what can be done in ACPI case? Can we use
   a UEFI variable with RVI specific GUID to pass this information? This
   will have the advantage that it can work with either DT or ACPI.
   Also, we may not need any UEFI spec update. Do you see any issue with
   this approach? Your inputs will be very helpful.


More information about the linux-riscv mailing list