Direct kernel boot removes the dependency of retrieving kernel image from block device. For Cloud Hypervisor, we use the following way to support it.
1. Cloud Hypervisor store kernel image into memory and put kernel info, including the memory base and size, into DT; 2. When init memory in edk2, the kernel memory region is retrieved from DT and set it as read only memory region; 3. Edk2 fetches kernel from memory and prepare a image handle; 4. Load kernel using LoadImage in the end. 1 is done in Cloud Hypervisor, 2 and 3 is done in this patch set, 4 is not affected. github PR link: https://github.com/tianocore/edk2/pull/3339 Signed-off-by: Jianyong Wu <jianyong...@arm.com> Jianyong Wu (3): CloudHv:arm: add kernel load fs driver CloudHv:arm: build hob for kernel image memory as read-only CloudHv:arm: add kernel loader lib dsc/fdf ArmVirtPkg/ArmVirtCloudHv.dsc | 8 +- ArmVirtPkg/ArmVirtCloudHv.fdf | 1 + .../CloudHvKernelLoaderFsDxe.c | 969 ++++++++++++++++++ .../CloudHvKernelLoaderFsDxe.inf | 55 + .../CloudHvVirtMemInfoLib.c | 66 +- 5 files changed, 1094 insertions(+), 5 deletions(-) create mode 100644 ArmVirtPkg/CloudHvKernelLoaderFsDxe/CloudHvKernelLoaderFsDxe.c create mode 100644 ArmVirtPkg/CloudHvKernelLoaderFsDxe/CloudHvKernelLoaderFsDxe.inf -- 2.17.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#93882): https://edk2.groups.io/g/devel/message/93882 Mute This Topic: https://groups.io/mt/93715215/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-