You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
2.0 KiB
75 lines
2.0 KiB
# 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
|
|
|