From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MGwZJ-0006Ao-AW for qemu-devel@nongnu.org; Wed, 17 Jun 2009 10:56:53 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MGwZE-00069A-OX for qemu-devel@nongnu.org; Wed, 17 Jun 2009 10:56:52 -0400 Received: from [199.232.76.173] (port=60505 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MGwZE-000695-GQ for qemu-devel@nongnu.org; Wed, 17 Jun 2009 10:56:48 -0400 Received: from cantor2.suse.de ([195.135.220.15]:60201 helo=mx2.suse.de) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MGwZD-000555-US for qemu-devel@nongnu.org; Wed, 17 Jun 2009 10:56:48 -0400 From: Alexander Graf Date: Wed, 17 Jun 2009 16:56:40 +0200 Message-Id: <1245250604-6291-1-git-send-email-agraf@suse.de> Subject: [Qemu-devel] [PATCH 0/4] Add multiboot support (x86) List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, rene@exactcode.de This patch implements support for Multiboot on x86 for -kernel. Multiboot is a "new" approach to get rid of different bootloaders, providing a unified interface for the kernel. It supports command line options and kernel modules. The two probably best known projects using multiboot are Xen and GNU Hurd. This implementation should be mostly feature-complete. It is missing VBE extensions, but as no system uses them currently it does not really hurt. To use multiboot, specify the kernel as -kernel option. Modules should be given as -initrd options, seperated by a comma (,). -append also works. Please bear in mind that grub also does gzip decompression, which qemu does not do yet. To run existing images, please ungzip them first. The guest multiboot loader code is implemented as option rom using int 19. Parts of the work are based on efforts by Rene Rebe, who originally ported my code to int 19. Also, Kevin Wolf helped a lot whenever I had a new version of this patch around. Alexander Graf (4): Change bochs bios init order Expose fw_cfg Multiboot support Multiboot build system hw/pc.c | 241 ++++++++++++++++++++++++++++++++++++++--- pc-bios/multiboot/Makefile | 41 +++++++ pc-bios/multiboot/multiboot.S | 229 +++++++++++++++++++++++++++++++++++++++ pc-bios/multiboot/signrom.c | 79 ++++++++++++++ target-i386/cpu.h | 3 + 5 files changed, 577 insertions(+), 16 deletions(-) create mode 100644 pc-bios/multiboot/Makefile create mode 100644 pc-bios/multiboot/multiboot.S create mode 100644 pc-bios/multiboot/signrom.c