Files
infix/board/common/qemu/Config.in
T
Tobias WaldekranzandJoachim Wiberg f660f6e9c7 qemu: Homogenize network setup
- Always respect the requested model to emulate. Before this change, a
  device configured to run in TAP mode would ignore a user's requested
  model and always emulate a e1000.

  This worked on x86_64 where that driver is part of the kernel, but
  that is not true for aarch64.

- Always supply a mactab. It was very confusing that the interface
  names would change, in Infix, depending on the selected networking
  mode.

- Remove old decoy variables that were assigned but never used
  anywhere.

- Separately setup the host and target side of a nic (i.e. use a
  -netdev/-device pair instead of the -nic shortcut). This lets us
  share the host side setup across all modes.
2023-08-09 19:45:32 +02:00

156 lines
2.7 KiB
Plaintext

mainmenu "QEMU Virtualization"
choice
prompt "Target Architecture"
default QEMU_aarch64
config QEMU_x86_64
bool "x86_64"
select QEMU_ARCH_IS_64
config QEMU_aarch64
bool "AArch64 (little endian)"
select QEMU_ARCH_IS_64
endchoice
choice
prompt "Loader"
default QEMU_LOADER_KERNEL
config QEMU_LOADER_KERNEL
bool "Kernel"
config QEMU_LOADER_UBOOT
bool "U-Boot"
depends on QEMU_aarch64
config QEMU_LOADER_OVMF
bool "OVMF (UEFI)"
depends on QEMU_x86_64
endchoice
choice
prompt "Rootfs type"
default QEMU_ROOTFS_INITRD
config QEMU_ROOTFS_MMC
bool "MMC"
depends on QEMU_aarch64
config QEMU_ROOTFS_INITRD
bool "Initrd"
depends on QEMU_LOADER_KERNEL
config QEMU_ROOTFS_VSCSI
bool "Virtio SCSI"
endchoice
choice
prompt "Console"
default QEMU_CONSOLE_VIRTIO
config QEMU_CONSOLE_VIRTIO
bool "Virtio (hvc0)"
depends on QEMU_LOADER_KERNEL
config QEMU_CONSOLE_SERIAL
bool "Serial (ttyS0/ttyAMA0)"
endchoice
config QEMU_MACHINE
string
default "qemu-system-aarch64 -M virt -cpu cortex-a72 -m 256M" if QEMU_aarch64
default "qemu-system-x86_64 -M q35,accel=kvm -cpu host -m 512M" if QEMU_x86_64
config QEMU_KERNEL
string
depends on QEMU_LOADER_KERNEL
default "Image" if QEMU_aarch64
default "bzImage" if QEMU_x86_64
config QEMU_BIOS
string
depends on !QEMU_LOADER_KERNEL
default "u-boot.bin" if QEMU_LOADER_UBOOT
default "OVMF.fd" if QEMU_LOADER_OVMF
config QEMU_ROOTFS
string
default "disk.img" if !QEMU_ROOTFS_INITRD
default "rootfs.squashfs" if QEMU_ROOTFS_INITRD
config QEMU_DTB_EXTEND
bool
depends on QEMU_LOADER_UBOOT
default y if QEMU_aarch64
config QEMU_RW
string "Writable /cfg layer"
depends on QEMU_ROOTFS_INITRD
default "cfg.ext4"
config QEMU_RW_VAR_OPT
bool "Separate writable /var (256MB)"
if QEMU_RW_VAR_OPT
config QEMU_RW_VAR
string "Writable /var layer"
default "var.ext4"
endif
config QEMU_HOST
string "Export host filesystem path"
default "/tmp"
config QEMU_APPEND
string "Extra kernel options"
depends on !QEMU_ROOTFS_MMC
config QEMU_EXTRA
string "Extra QEMU options"
comment "Networking"
choice
prompt "Mode"
default QEMU_NET_USER
config QEMU_NET_NONE
bool "None"
config QEMU_NET_BRIDGE
bool "Bridged"
config QEMU_NET_USER
bool "User"
config QEMU_NET_TAP
bool "TAP"
endchoice
config QEMU_NET_MODEL
string "Interface model"
default "virtio-net-pci"
config QEMU_NET_BRIDGE_DEV
string "Bridge device"
depends on QEMU_NET_BRIDGE
default "virbr0"
config QEMU_NET_USER_OPTS
string "User mode options"
depends on QEMU_NET_USER
help
Extra -nic user,<OPTIONS>
config QEMU_NET_TAP_N
int "Number of TAPs"
depends on QEMU_NET_TAP
default 1