ANDROID: GKI: enable options to run GKI as Microdroid guest

Starting with android15-6.6 we are planning to support running GKI as
Microdroid guest kernel to enable VM use cases that require loading
vendor-provided kernel modules into guest VM (e.g. device assignment).

Additionally adjust the rockpi4_gki.fragment to address the build
breakage caused by changes to the gki_defconfig.

Bug: 354274657
Bug: 302467077
Test: tools/bazel run //common:kernel_aarch64_dist
Test: tools/bazel run //common:kernel_x86_64_dist
Change-Id: Ide66b713a0edee869264ee9dd1def5f21d28c862
Signed-off-by: Nikita Ioffe <ioffe@google.com>
This commit is contained in:
Nikita Ioffe
2024-11-07 16:03:29 +00:00
parent 7566a425e3
commit 023175b40e
5 changed files with 27 additions and 3 deletions
-3
View File
@@ -903,7 +903,6 @@ pkg_install(
_ROCKPI4_MODULE_OUTS = [
# keep sorted
"drivers/block/virtio_blk.ko",
"drivers/char/hw_random/virtio-rng.ko",
"drivers/clk/clk-rk808.ko",
"drivers/cpufreq/cpufreq-dt.ko",
@@ -948,9 +947,7 @@ _ROCKPI4_MODULE_OUTS = [
"drivers/thermal/rockchip_thermal.ko",
"drivers/usb/host/ohci-hcd.ko",
"drivers/usb/host/ohci-platform.ko",
"drivers/virtio/virtio_pci.ko",
"drivers/virtio/virtio_pci_legacy_dev.ko",
"drivers/virtio/virtio_pci_modern_dev.ko",
"net/core/failover.ko",
]
+10
View File
@@ -270,6 +270,7 @@ CONFIG_NET_ACT_MIRRED=y
CONFIG_NET_ACT_SKBEDIT=y
CONFIG_NET_ACT_BPF=y
CONFIG_VSOCKETS=y
CONFIG_VIRTIO_VSOCKETS=m
CONFIG_CGROUP_NET_PRIO=y
CONFIG_CAN=m
CONFIG_BT=m
@@ -309,11 +310,14 @@ CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_LOOP_MIN_COUNT=16
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_VIRTIO_BLK=m
CONFIG_BLK_DEV_UBLK=y
CONFIG_BLK_DEV_NVME=y
CONFIG_NVME_MULTIPATH=y
CONFIG_SRAM=y
CONFIG_UID_SYS_STATS=y
CONFIG_OPEN_DICE=m
CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_SCSI=y
# CONFIG_SCSI_PROC_FS is not set
CONFIG_BLK_DEV_SD=y
@@ -400,7 +404,9 @@ CONFIG_SERIAL_SPRD_CONSOLE=y
CONFIG_NULL_TTY=y
CONFIG_HVC_DCC=y
CONFIG_SERIAL_DEV_BUS=y
CONFIG_VIRTIO_CONSOLE=m
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_CCTRNG=m
# CONFIG_DEVMEM is not set
# CONFIG_DEVPORT is not set
# CONFIG_I2C_HELPER_AUTO is not set
@@ -553,6 +559,9 @@ CONFIG_RTC_DRV_PL030=y
CONFIG_RTC_DRV_PL031=y
CONFIG_DMABUF_HEAPS=y
CONFIG_UIO=y
CONFIG_VIRTIO_PCI=m
# CONFIG_VIRTIO_PCI_LEGACY is not set
CONFIG_VIRTIO_BALLOON=m
CONFIG_VHOST_VSOCK=y
CONFIG_STAGING=y
CONFIG_ASHMEM=y
@@ -700,6 +709,7 @@ CONFIG_TRACE_MMIO_ACCESS=y
CONFIG_CRC_CCITT=y
CONFIG_XZ_DEC=y
CONFIG_SWIOTLB_DYNAMIC=y
CONFIG_DMA_RESTRICTED_POOL=y
CONFIG_DMA_CMA=y
CONFIG_PRINTK_TIME=y
CONFIG_PRINTK_CALLER=y
+1
View File
@@ -77,3 +77,4 @@ CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_VIRTIO_PCI=m
CONFIG_VIRTIO_BLK=m
CONFIG_VIRTIO_NET=m
CONFIG_VIRTIO_PCI_LEGACY=y
+7
View File
@@ -264,6 +264,7 @@ CONFIG_NET_ACT_MIRRED=y
CONFIG_NET_ACT_SKBEDIT=y
CONFIG_NET_ACT_BPF=y
CONFIG_VSOCKETS=y
CONFIG_VIRTIO_VSOCKETS=m
CONFIG_CGROUP_NET_PRIO=y
CONFIG_CAN=m
CONFIG_BT=m
@@ -298,11 +299,13 @@ CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_LOOP_MIN_COUNT=16
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_VIRTIO_BLK=m
CONFIG_BLK_DEV_UBLK=y
CONFIG_BLK_DEV_NVME=y
CONFIG_NVME_MULTIPATH=y
CONFIG_SRAM=y
CONFIG_UID_SYS_STATS=y
CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_SCSI=y
# CONFIG_SCSI_PROC_FS is not set
CONFIG_BLK_DEV_SD=y
@@ -380,6 +383,7 @@ CONFIG_SERIAL_SAMSUNG=y
CONFIG_SERIAL_SAMSUNG_CONSOLE=y
CONFIG_NULL_TTY=y
CONFIG_SERIAL_DEV_BUS=y
CONFIG_VIRTIO_CONSOLE=m
CONFIG_HW_RANDOM=y
# CONFIG_HW_RANDOM_VIA is not set
# CONFIG_DEVMEM is not set
@@ -517,6 +521,9 @@ CONFIG_RTC_CLASS=y
CONFIG_RTC_LIB_KUNIT_TEST=m
CONFIG_DMABUF_HEAPS=y
CONFIG_UIO=y
CONFIG_VIRTIO_PCI=m
# CONFIG_VIRTIO_PCI_LEGACY is not set
CONFIG_VIRTIO_BALLOON=m
CONFIG_VHOST_VSOCK=y
CONFIG_STAGING=y
CONFIG_ASHMEM=y
+9
View File
@@ -8,11 +8,14 @@ This module contains a full list of kernel modules
_COMMON_GKI_MODULES_LIST = [
# keep sorted
"drivers/block/virtio_blk.ko",
"drivers/block/zram/zram.ko",
"drivers/bluetooth/btbcm.ko",
"drivers/bluetooth/btqca.ko",
"drivers/bluetooth/btsdio.ko",
"drivers/bluetooth/hci_uart.ko",
"drivers/char/virtio_console.ko",
"drivers/misc/vcpu_stall_detector.ko",
"drivers/net/can/dev/can-dev.ko",
"drivers/net/can/slcan/slcan.ko",
"drivers/net/can/vcan.ko",
@@ -43,6 +46,9 @@ _COMMON_GKI_MODULES_LIST = [
"drivers/usb/mon/usbmon.ko",
"drivers/usb/serial/ftdi_sio.ko",
"drivers/usb/serial/usbserial.ko",
"drivers/virtio/virtio_balloon.ko",
"drivers/virtio/virtio_pci.ko",
"drivers/virtio/virtio_pci_modern_dev.ko",
"fs/netfs/netfs.ko",
"kernel/kheaders.ko",
"lib/crypto/libarc4.ko",
@@ -75,6 +81,7 @@ _COMMON_GKI_MODULES_LIST = [
"net/rfkill/rfkill.ko",
"net/tipc/tipc.ko",
"net/tipc/tipc_diag.ko",
"net/vmw_vsock/vmw_vsock_virtio_transport.ko",
]
# Deprecated - Use `get_gki_modules_list` function instead.
@@ -87,6 +94,8 @@ _ARM_GKI_MODULES_LIST = [
_ARM64_GKI_MODULES_LIST = [
# keep sorted
"drivers/char/hw_random/cctrng.ko",
"drivers/misc/open-dice.ko",
"drivers/ptp/ptp_kvm.ko",
]