efi: Refactor construction of file based device path
efi: Refactor EFI device path generatation for loaded image
efi: Use DevicePath::generate() for executing the main EFI binary
efi: Consistently support filenames up to 256 characters
efi: Move FileDevicePathProtocol struct to where it is used
efi: Clarify naming of type for two FileDevicePathProtocol
efi: Add support for memory mapped device path
efi: Add support for booting from a memory mapped device path
efi: Refactor code for loading image
GRUB on (at least RISC-V) loads the guest kernel directly into memory and then
expects the firmware to parse it from there - it does this by using a device
path of type PCI and subtype memory mapped.
With this change the Linux kernel boots on RISC-V if the kernel command line is
modified to specify a fixed rootfs as there are issues with the initramfs.
GRUB on (at least RISC-V) loads the guest kernel directly into memory and then expects the firmware to parse it from there - it does this by using a device path of type PCI and subtype memory mapped.
With this change the Linux kernel boots on RISC-V if the kernel command line is modified to specify a fixed rootfs as there are issues with the initramfs.