Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions tools/hvisor.c
Original file line number Diff line number Diff line change
Expand Up @@ -857,6 +857,25 @@ static int zone_start_from_json(const char *json_config_path,
#ifndef X86_64
config->dtb_size = load_image_to_memory(dtb_filepath_json->valuestring,
config->dtb_load_paddr);

// Load initramfs if configured (architecture-independent)
const cJSON *const initramfs_filepath_json =
SAFE_CJSON_GET_OBJECT_ITEM(root, "initramfs_filepath");
const cJSON *const initramfs_load_paddr_json =
SAFE_CJSON_GET_OBJECT_ITEM(root, "initramfs_load_paddr");
if (initramfs_filepath_json != NULL && initramfs_load_paddr_json != NULL) {
uintptr_t initramfs_load_paddr;
if (parse_json_address(initramfs_load_paddr_json,
&initramfs_load_paddr) != 0) {
log_error("Failed to parse initramfs_load_paddr");
goto err_out;
}
__u64 initramfs_size = load_image_to_memory(
initramfs_filepath_json->valuestring, initramfs_load_paddr);
log_info("Loaded initramfs (%s) to 0x%" PRIxPTR ", size: %llu bytes",
initramfs_filepath_json->valuestring, initramfs_load_paddr,
initramfs_size);
}
#endif

log_info("Kernel size: %llu, DTB size: %llu", config->kernel_size,
Expand Down
Loading