mirror of
https://github.com/kernelkit/infix.git
synced 2026-07-22 01:13:00 +02:00
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>
256 lines
5.1 KiB
Plaintext
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
|