From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1N8HdS-0005wy-Gt for qemu-devel@nongnu.org; Wed, 11 Nov 2009 13:09:39 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1N8HdL-0005ke-8J for qemu-devel@nongnu.org; Wed, 11 Nov 2009 13:09:35 -0500 Received: from [199.232.76.173] (port=55919 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1N8HdK-0005jT-Kl for qemu-devel@nongnu.org; Wed, 11 Nov 2009 13:09:30 -0500 Received: from cantor.suse.de ([195.135.220.2]:44946 helo=mx1.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 1N8HdJ-0008UC-OF for qemu-devel@nongnu.org; Wed, 11 Nov 2009 13:09:30 -0500 From: Alexander Graf Date: Wed, 11 Nov 2009 19:09:20 +0100 Message-Id: <1257962966-22902-1-git-send-email-agraf@suse.de> Subject: [Qemu-devel] [PATCH 0/6] Fix -kernel with SeaBIOS List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: glommer@redhat.com, avi@redhat.com SeaBIOS clears RAM between we write our -kernel image to RAM and the int19 handler gets triggered. So in order to work around that, I sat down and implemented Avi's suggestion of "downloading" all blobs in runtime from the fw_cfg interface Thanks to glommer who talked me into doing it ;-). Alexander Graf (6): Make fw_cfg interface 32-bit aware Introduce copy_rom Convert multiboot to fw_cfg backed data storage Move common option rom code to header file Convert linux bootrom to external rom and fw_cfg Add linuxboot to BLOBS Makefile | 2 +- hw/fw_cfg.c | 8 +- hw/fw_cfg.h | 13 +++- hw/loader.c | 38 +++++++++ hw/loader.h | 1 + hw/pc.c | 169 +++++++++++++---------------------------- pc-bios/optionrom/Makefile | 2 +- pc-bios/optionrom/linuxboot.S | 140 ++++++++++++++++++++++++++++++++++ pc-bios/optionrom/multiboot.S | 108 ++++++++++----------------- pc-bios/optionrom/optionrom.h | 107 ++++++++++++++++++++++++++ 10 files changed, 396 insertions(+), 192 deletions(-) create mode 100644 pc-bios/optionrom/linuxboot.S create mode 100644 pc-bios/optionrom/optionrom.h