diff options
-rw-r--r-- | package/grub/files/grub-pc-serial.cfg | 2 | ||||
-rw-r--r-- | package/grub/files/grub-pc-vga.cfg | 2 | ||||
-rwxr-xr-x | scripts/create.sh | 4 | ||||
-rw-r--r-- | target/config/Config.in.qemuopts | 12 | ||||
-rw-r--r-- | target/linux/config/Config.in.virtio | 30 | ||||
-rw-r--r-- | target/x86_64/Makefile | 14 | ||||
-rw-r--r-- | target/x86_64/kernel/qemu-x86_64 | 1 |
7 files changed, 45 insertions, 20 deletions
diff --git a/package/grub/files/grub-pc-serial.cfg b/package/grub/files/grub-pc-serial.cfg index 4b6a0616c..d48b82c45 100644 --- a/package/grub/files/grub-pc-serial.cfg +++ b/package/grub/files/grub-pc-serial.cfg @@ -10,5 +10,5 @@ menuentry "OpenADK" { insmod ext2 set root='hd0,1' echo "Loading OpenADK" - linux /boot/kernel root=/dev/sda1 rootfstype=ext4 rootwait panic=10 + linux /boot/kernel rootfstype=ext4 rootwait panic=10 } diff --git a/package/grub/files/grub-pc-vga.cfg b/package/grub/files/grub-pc-vga.cfg index 72af5abce..8200624d6 100644 --- a/package/grub/files/grub-pc-vga.cfg +++ b/package/grub/files/grub-pc-vga.cfg @@ -6,5 +6,5 @@ menuentry "OpenADK" { insmod ext2 set root='hd0,1' echo "Loading OpenADK" - linux /boot/kernel console=tty0 root=/dev/sda1 rootfstype=ext4 rootwait panic=10 + linux /boot/kernel console=tty0 rootfstype=ext4 rootwait panic=10 } diff --git a/scripts/create.sh b/scripts/create.sh index cc0099b4d..7ca6b3a3b 100755 --- a/scripts/create.sh +++ b/scripts/create.sh @@ -2,7 +2,7 @@ #- # Copyright © 2010, 2011, 2012 # Thorsten Glaser <tg@mirbsd.org> -# Copyright © 2010-2024 +# Copyright © 2010-2025 # Waldemar Brodkorb <wbx@openadk.org> # # Provided that these terms and disclaimer and all copyright notices @@ -152,7 +152,7 @@ else fi if (( usegrub )); then - tar -xOJf "$src" boot/grub/core.img >"$T/core.img" + tar -xOzf "$src" boot/grub/core.img >"$T/core.img" integer coreimgsz=$($statcmd "$T/core.img") if (( coreimgsz < 1024 )); then print -u2 core.img is probably too small: $coreimgsz diff --git a/target/config/Config.in.qemuopts b/target/config/Config.in.qemuopts index 78c608b49..df7128efa 100644 --- a/target/config/Config.in.qemuopts +++ b/target/config/Config.in.qemuopts @@ -95,20 +95,8 @@ endchoice choice prompt "Qemu Emulation using VirtIO drivers" depends on ADK_TARGET_SYSTEM_QEMU_SPARC64 || \ - ADK_TARGET_SYSTEM_QEMU_AARCH64 || \ - ADK_TARGET_SYSTEM_QEMU_ARC || \ - ADK_TARGET_SYSTEM_QEMU_CSKY || \ - ADK_TARGET_SYSTEM_QEMU_M68K_VIRT || \ - ADK_TARGET_SYSTEM_QEMU_RISCV32 || \ - ADK_TARGET_SYSTEM_QEMU_RISCV64 || \ ADK_TARGET_SYSTEM_QEMU_X86 || \ ADK_TARGET_SYSTEM_QEMU_X86_64 -default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_AARCH64 -default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_ARC -default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_CSKY -default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_RISCV32 -default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_RISCV64 -default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_M68K_VIRT config ADK_TARGET_QEMU_WITHOUT_VIRTIO bool "disabled" diff --git a/target/linux/config/Config.in.virtio b/target/linux/config/Config.in.virtio index 526e2920e..053b2465c 100644 --- a/target/linux/config/Config.in.virtio +++ b/target/linux/config/Config.in.virtio @@ -10,9 +10,6 @@ config ADK_LINUX_KERNEL_VIRTIO_MENU config ADK_LINUX_KERNEL_VIRTIO bool -config ADK_LINUX_KERNEL_VIRTIO_CONSOLE - bool - config ADK_LINUX_KERNEL_VIRTIO_PCI_LEGACY bool @@ -22,6 +19,20 @@ config ADK_LINUX_KERNEL_VIRTIO_PCI config ADK_LINUX_KERNEL_VIRTIO_MMIO bool +config ADK_LINUX_KERNEL_VIRTIO_CONSOLE + bool "Virtio console driver" + select ADK_LINUX_KERNEL_VIRTIO + default y if ADK_TARGET_SYSTEM_QEMU_AARCH64 + default y if ADK_TARGET_SYSTEM_QEMU_ARC + default y if ADK_TARGET_SYSTEM_QEMU_CSKY + default y if ADK_TARGET_SYSTEM_QEMU_M68K_VIRT + default y if ADK_TARGET_SYSTEM_QEMU_RISCV32 + default y if ADK_TARGET_SYSTEM_QEMU_RISCV64 + default y if ADK_TARGET_SYSTEM_QEMU_S390 + default n + help + Enables support for Virtio console driver. + config ADK_LINUX_KERNEL_VIRTIO_NET tristate "Virtio net driver" select ADK_LINUX_KERNEL_VIRTIO @@ -29,6 +40,12 @@ config ADK_LINUX_KERNEL_VIRTIO_NET select ADK_LINUX_KERNEL_VIRTIO_MMIO select ADK_LINUX_KERNEL_VIRTIO_PCI select ADK_LINUX_KERNEL_VIRTIO_PCI_LEGACY + default y if ADK_TARGET_SYSTEM_QEMU_AARCH64 + default y if ADK_TARGET_SYSTEM_QEMU_ARC + default y if ADK_TARGET_SYSTEM_QEMU_CSKY + default y if ADK_TARGET_SYSTEM_QEMU_M68K_VIRT + default y if ADK_TARGET_SYSTEM_QEMU_RISCV32 + default y if ADK_TARGET_SYSTEM_QEMU_RISCV64 default y if ADK_TARGET_SYSTEM_QEMU_S390 default n help @@ -42,6 +59,13 @@ config ADK_LINUX_KERNEL_VIRTIO_BLK select ADK_LINUX_KERNEL_VIRTIO_PCI_LEGACY select ADK_LINUX_KERNEL_VIRTIO_MMIO select ADK_LINUX_KERNEL_BLK_DEV + default y if ADK_TARGET_SYSTEM_QEMU_AARCH64 + default y if ADK_TARGET_SYSTEM_QEMU_ARC + default y if ADK_TARGET_SYSTEM_QEMU_CSKY + default y if ADK_TARGET_SYSTEM_QEMU_M68K_VIRT + default y if ADK_TARGET_SYSTEM_QEMU_RISCV32 + default y if ADK_TARGET_SYSTEM_QEMU_RISCV64 + default y if ADK_TARGET_SYSTEM_QEMU_S390 default n help Enables support for Virtio Block driver. diff --git a/target/x86_64/Makefile b/target/x86_64/Makefile index 2c5bcd253..221311091 100644 --- a/target/x86_64/Makefile +++ b/target/x86_64/Makefile @@ -10,11 +10,19 @@ KERNEL:=$(LINUX_DIR)/arch/x86/boot/bzImage QEMU_ARCH:=x86_64 QEMU_ARGS:=-M pc -m 256 +QEMU_ARGS+=${ADK_QEMU_ARGS} + ifeq ($(ADK_PACKAGE_GRUB_EFI_X86_64),y) QEMU_ARGS+=-L . -bios bios-x86_64.bin endif -QEMU_ARGS+=${ADK_QEMU_ARGS} + +ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y) +QEMU_ARGS+=-net nic,model=virtio -net user +QEMU_ARGS+=-drive file=qemu-${ADK_TARGET_CPU_ARCH}.img,if=virtio +else QEMU_ARGS+=-net user -net nic,model=e1000 +endif + ifeq ($(ADK_TARGET_QEMU_WITH_AUDIO),y) QEMU_ARGS+=-device AC97 endif @@ -39,7 +47,11 @@ ifeq ($(ADK_TARGET_QEMU),y) @echo "$(CREATE) qemu-${ADK_TARGET_CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)" @echo "Start qemu with following options:" ifeq ($(ADK_TARGET_QEMU_WITH_BOOTLOADER),y) +ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y) + @echo 'qemu-system-${QEMU_ARCH} ${QEMU_ARGS}' +else @echo 'qemu-system-${QEMU_ARCH} ${QEMU_ARGS} qemu-${ADK_TARGET_CPU_ARCH}.img' +endif else @echo 'qemu-system-${QEMU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${ADK_TARGET_CPU_ARCH}.img' endif diff --git a/target/x86_64/kernel/qemu-x86_64 b/target/x86_64/kernel/qemu-x86_64 index 9e9c1197f..073a4c7ca 100644 --- a/target/x86_64/kernel/qemu-x86_64 +++ b/target/x86_64/kernel/qemu-x86_64 @@ -11,3 +11,4 @@ CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y CONFIG_AMD_NB=y CONFIG_IA32_EMULATION=y CONFIG_CMDLINE_BOOL=y +CONFIG_CMDLINE_OVERRIDE=y |