On RISC-V check that the /chosen node has a boot-hartid property.
To run the test configure with CONFIG_CMD_BOOTEFI_SELFTEST=y and issue
setenv efi_selftest device tree
setenv serial# myserial
bootefi selftest
If the test succeeds, it reports the boot-hartid, e.g.
boot-hartid: 1
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
return EFI_ST_FAILURE;
}
}
+ str = get_property(L"boot-hartid", L"chosen");
+ if (IS_ENABLED(CONFIG_RISCV)) {
+ if (str) {
+ efi_st_printf("boot-hartid: %u\n",
+ f2h(*(fdt32_t *)str));
+ ret = boottime->free_pool(str);
+ if (ret != EFI_SUCCESS) {
+ efi_st_error("FreePool failed\n");
+ return EFI_ST_FAILURE;
+ }
+ } else {
+ efi_st_error("boot-hartid not found\n");
+ return EFI_ST_FAILURE;
+ }
+ }
return EFI_ST_SUCCESS;
}