Hi Leo, thank you for your reply.
I did modify the .config file before building Mani’s kernel source tree to ensure that Xen related kernel flags are included and that CONFIG_USB_RTL8152 is set to Y instead. Since the config file is too large to load, I did a grep on the config file to list all the Xen related kernel flag:
CONFIG_XEN_DOM0=y
CONFIG_XEN=y
CONFIG_NET_9P_XEN is not set
CONFIG_XEN_BLKDEV_FRONTEND=y
CONFIG_XEN_BLKDEV_BACKEND=y
CONFIG_XEN_SCSI_FRONTEND=y
CONFIG_NETXEN_NIC is not set
CONFIG_XEN_NETDEV_FRONTEND=y
CONFIG_XEN_NETDEV_BACKEND=y
CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
CONFIG_HVC_XEN=y
CONFIG_HVC_XEN_FRONTEND=y
CONFIG_TCG_XEN is not set
CONFIG_XEN_WDT=y
CONFIG_DRM_XEN=y
CONFIG_DRM_XEN_FRONTEND=m
CONFIG_XEN_FBDEV_FRONTEND=y
CONFIG_SND_XEN_FRONTEND=y
CONFIG_MMC_SDHCI_XENON=y
Xen driver support
CONFIG_XEN_BALLOON=y
CONFIG_XEN_SCRUB_PAGES_DEFAULT=y
CONFIG_XEN_DEV_EVTCHN=y
CONFIG_XEN_BACKEND=y
CONFIG_XENFS=y
CONFIG_XEN_COMPAT_XENFS=y
CONFIG_XEN_SYS_HYPERVISOR=y
CONFIG_XEN_XENBUS_FRONTEND=y
CONFIG_XEN_GNTDEV=y
CONFIG_XEN_GNTDEV_DMABUF=y
CONFIG_XEN_GRANT_DEV_ALLOC=y
CONFIG_XEN_GRANT_DMA_ALLOC=y
CONFIG_SWIOTLB_XEN=y
CONFIG_XEN_PVCALLS_FRONTEND=y
CONFIG_XEN_PVCALLS_BACKEND=y
CONFIG_XEN_PRIVCMD=y
CONFIG_XEN_EFI=y
CONFIG_XEN_AUTO_XLATE=y
My kernel build steps are followed verbatim to Xen’s Hikey960 wiki:
export CROSS_COMPILE and ARCH to aarch64-linux-gnu, arm64
make menuconfig to verify all Xen flags are set
make -j8
copy ARM64 boot Image and Image.dtb to the rootfs image
I have tried many avenues to load Xen. For example, creating a new rootfs and copy all the files from the rootfs image provided by Mani with additional files including xen.efi to the boot directory (xen’s wiki way). I also tried just booting Mani’s rootfs image and modified the existing grub.cfg to include Xen’s menuentry extracted from Xen’s wiki. Grub2 is also recompiled to include xen_boot module and replaced with the corresponding boot.image
Finally, I tried adding hmp-unsafe and dom0_vcpus_pin to Xen commandline. All 8 cpus were brought up but still failed to boot.