# Virtualization drivers configuration options # Copyright (c) 2015-2020 Intel Corporation # SPDX-License-Identifier: Apache-2.0 menuconfig VIRTUALIZATION bool "Virtualization guest drivers" help This contains various drivers meant to support and expose features when Zephyr is running as a guest in a virtualized or emulated environment. if VIRTUALIZATION config IVSHMEM bool "Inter-VM shared memory device (ivshmem)" depends on PCIE help This will enable support of qemu's ivshmem device, which is also present in ACRN hypervisor, and lets VM sharing memory with each other. if IVSHMEM module = IVSHMEM module-str = ivshmem source "subsys/logging/Kconfig.template.log_config" config IVSHMEM_DOORBELL bool "Support interrupt based ivshmem (doorbell version)" help This will enable support of ivshmem-doorbell, i.e. the interrupt based ivshmem. For ivshmem-v2 INTx interrupts are also supported. config IVSHMEM_MSI_X_VECTORS int "How many notification vectors should be pre-allocated?" default 2 depends on IVSHMEM_DOORBELL help MSI-X vector holders must be pre-allocated. One can pre-allocate more or less than necessary. Depends on how many VMs will connect with each other. These are know to be the notification vectors in ivshmem. config IVSHMEM_INT_PRIORITY int "MSI-X interrupt priority" default 2 depends on IVSHMEM_DOORBELL help Interrupt priority used for the MSI-X generated interrupts. INTx interrupt priority is configured in the device tree. config IVSHMEM_SHELL bool "IVshmem shell module" depends on SHELL help This is mostly a module to help getting info the ivshmem and/or quickly testing your ivshmem client application (from another VM). endif # IVSHMEM config IVSHMEM_V2 bool "Inter-VM shared memory v2 (ivshmem-v2)" select IVSHMEM help Enable ivshmem-v2 support. ivshmem-v2 is primarily used for IPC in the Jailhouse hypervisor. config IVSHMEM_V2_MAX_PEERS int "Maximum number of ivshmem-v2 peers" depends on IVSHMEM_V2 default 2 range 2 65536 endif # VIRTUALIZATION