Files
infix/board/common/qemu/Config.in.in
T
Joachim Wiberg 17a1b80b83 Namespace Infix Kconfig options under IX_
Infix defines its own Kconfig options with unprefixed names (IMAGE_*,
QEMU_*, TRUSTED_KEYS*) and an INFIX_ prefix.  Unprefixed names risk
clashing with Buildroot and with other br2-externals/spins that source
our tree.

Rename all 86 options to a common IX_ prefix, collapsing the existing
INFIX_ ones, e.g. INFIX_IMAGE_ID becomes IX_IMAGE_ID.  The os-release
INFIX_DESC field is a runtime interface, not a Kconfig option, and is
kept; the qemu Config.in generator's @ARCH@ symbol is updated to match.

Closes #1305

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2026-07-06 05:28:11 +02:00

256 lines
5.1 KiB
Plaintext

mainmenu "QEMU Virtualization"
config IX_QEMU_ARCH_IS_32
bool
config IX_QEMU_ARCH_IS_64
bool
choice
prompt "Target Architecture"
default @ARCH@
config IX_QEMU_riscv64
bool "riscv64"
select IX_QEMU_ARCH_IS_64
config IX_QEMU_x86_64
bool "x86_64"
select IX_QEMU_ARCH_IS_64
config IX_QEMU_arm
bool "AArch32 (little endian)"
select IX_QEMU_ARCH_IS_32
config IX_QEMU_aarch64
bool "AArch64 (little endian)"
select IX_QEMU_ARCH_IS_64
endchoice
choice
prompt "Loader"
default IX_QEMU_LOADER_KERNEL
config IX_QEMU_LOADER_KERNEL
bool "Kernel"
config IX_QEMU_LOADER_UBOOT
bool "U-Boot"
depends on IX_QEMU_aarch64
config IX_QEMU_LOADER_OVMF
bool "OVMF (UEFI)"
depends on IX_QEMU_x86_64
endchoice
choice
prompt "Rootfs type"
default IX_QEMU_ROOTFS_INITRD
config IX_QEMU_ROOTFS_MMC
bool "MMC"
depends on IX_QEMU_aarch64
config IX_QEMU_ROOTFS_INITRD
bool "Initrd"
depends on IX_QEMU_LOADER_KERNEL
config IX_QEMU_ROOTFS_VSCSI
bool "Virtio SCSI"
endchoice
choice
prompt "Console"
default IX_QEMU_CONSOLE_SERIAL if IX_QEMU_arm
default IX_QEMU_CONSOLE_VIRTIO
config IX_QEMU_CONSOLE_VIRTIO
bool "Virtio (hvc0)"
config IX_QEMU_CONSOLE_SERIAL
bool "Serial (ttyS0/ttyAMA0)"
depends on !IX_QEMU_LOADER_OVMF
endchoice
config IX_QEMU_MACHINE
string "Select emulated machine"
default "qemu-system-arm -M virt,accel=kvm:tcg -cpu max" if IX_QEMU_arm
default "qemu-system-aarch64 -M virt,accel=kvm:tcg -cpu cortex-a53" if IX_QEMU_aarch64
default "qemu-system-x86_64 -M pc,accel=kvm:tcg -cpu max" if IX_QEMU_x86_64
help
You should not have to change this setting, although you may
want to tweak it, or change the acceleration.
The default is based on the Buildroot architecture, selected by
the defconfig you started with. Currently Infix supports
arm (AArch32), aarch64 (ARM64), and x86_64 (AMD64).
config IX_QEMU_MACHINE_RAM
string "RAM size (k/M/G)"
default "448M"
help
The default, 384 MiB, works for most configurations. However,
if you get kernel panic with: "System is deadlocked on memory",
try increasing this one.
config IX_QEMU_KERNEL
string
depends on IX_QEMU_LOADER_KERNEL
default "../zImage" if IX_QEMU_arm
default "../Image" if IX_QEMU_aarch64
default "../bzImage" if IX_QEMU_x86_64
config IX_QEMU_BIOS
string
depends on !IX_QEMU_LOADER_KERNEL
default "../u-boot.bin" if IX_QEMU_LOADER_UBOOT
default "../OVMF.fd" if IX_QEMU_LOADER_OVMF
config IX_QEMU_ROOTFS
string
default "@DISK_IMG@" if !IX_QEMU_ROOTFS_INITRD
default "../rootfs.squashfs" if IX_QEMU_ROOTFS_INITRD
config IX_QEMU_DTB_EXTEND
bool
depends on IX_QEMU_LOADER_UBOOT
default y if IX_QEMU_aarch64
if IX_QEMU_ROOTFS_INITRD
config IX_QEMU_RW
string "Writable /cfg layer"
depends on IX_QEMU_ROOTFS_INITRD
default "cfg.ext4"
config IX_QEMU_RW_VAR_OPT
bool "Separate writable /var"
if IX_QEMU_RW_VAR_OPT
config IX_QEMU_RW_VAR_SIZE
string "Size of /var"
default "256M"
config IX_QEMU_RW_VAR
string "Writable /var layer"
default "var.ext4"
endif
endif
config IX_QEMU_VPD
bool "Emulate a Vital Product Data (VPD) Memory"
config IX_QEMU_HOST
string "Export host filesystem path"
default "/tmp"
config IX_QEMU_APPEND
string "Extra kernel options"
depends on !IX_QEMU_ROOTFS_MMC
config IX_QEMU_EXTRA
string "Extra QEMU options"
comment "RTC"
choice
prompt "Mode"
default IX_QEMU_RTC_UTC
config IX_QEMU_RTC_UTC
bool "UTC"
config IX_QEMU_RTC_LOCAL
bool "Local time"
config IX_QEMU_RTC_RANDOM
bool "Random"
endchoice
choice
prompt "Clock"
default IX_QEMU_CLOCK_HOST
config IX_QEMU_CLOCK_HOST
bool "Host clock"
config IX_QEMU_CLOCK_RT
bool "Independent (monotonic)"
config IX_QEMU_CLOCK_VM
bool "Virtual"
endchoice
config IX_QEMU_RTC
string
default "utc" if IX_QEMU_RTC_UTC
default "localtime" if IX_QEMU_RTC_LOCAL
default "random" if IX_QEMU_RTC_RANDOM
config IX_QEMU_CLOCK
string
default "host" if IX_QEMU_CLOCK_HOST
default "rt" if IX_QEMU_CLOCK_RT
default "vm" if IX_QEMU_CLOCK_VM
comment "Networking"
choice
prompt "Network Mode"
default IX_QEMU_NET_USER
config IX_QEMU_NET_NONE
bool "None"
config IX_QEMU_NET_BRIDGE
bool "Bridged"
config IX_QEMU_NET_USER
bool "User"
config IX_QEMU_NET_TAP
bool "TAP"
config IX_QEMU_NET_ROCKER
bool "Rocker"
endchoice
config IX_QEMU_NET_MODEL
string "Interface model"
default "virtio-net-device" if IX_QEMU_arm
default "virtio-net-pci"
help
The default, virtio-net-pci, NIC works for most use-cases, but
if you want to play with low-level stuff like ethtool, you
might want to test the Intel 82545EM driver, e1000.
Note: ARM 32-bit uses virtio-net-device (MMIO) by default.
config IX_QEMU_NET_BRIDGE_DEV
string "Bridge device"
depends on IX_QEMU_NET_BRIDGE
default "virbr0"
config IX_QEMU_NET_USER_OPTS
string "User mode options"
depends on IX_QEMU_NET_USER
help
Extra -nic user,<OPTIONS>
config IX_QEMU_NET_TAP_N
int "Number of TAPs"
depends on IX_QEMU_NET_TAP
default 1
config IX_QEMU_NET_PORTS
int "Number of Rocker switch ports"
depends on IX_QEMU_NET_ROCKER
default 10