[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: RFC: emulation of system flash

From: Jan Kiszka
Subject: [Qemu-devel] Re: RFC: emulation of system flash
Date: Thu, 10 Mar 2011 12:46:09 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv: Gecko/20080226 SUSE/ Thunderbird/ Mnenhy/

On 2011-03-10 12:27, Jan Kiszka wrote:
> On 2011-03-10 10:47, Gleb Natapov wrote:
>> On Wed, Mar 09, 2011 at 08:51:23PM -0800, Jordan Justen wrote:
>>> Hi all,
>>> I have documented a simple flash-like device which I think could be
>>> useful for qemu/kvm in some cases.  (Particularly for allowing
>>> persistent UEFI non-volatile variables.)
>>> http://wiki.qemu.org/Features/System_Flash
>>> Let me know if you have any suggestions or concerns.
>> Two things. First You suggest to replace -bios with -flash. This will
>> make firmware upgrade painful process that will have to be performed
>> from inside the guest since the same flash image will contain both
>> firmware and whatever data was stored on a flash which presumably you
>> want to reuse after upgrading a firmware. My suggestion is to extend
>> -bios option like this:
>> -bios bios.bin,flash=flash.bin,flash_base=addr
>> flash.bin will be mapped at address flash_base, or, if flash_base is not
>> present, just below bios.bin.
> ...or define -flash in a way that allows mapping the bios image as an
> overlay to the otherwise guest-managed flash image.

Better define flash chips as qdev devices and make the attributes qdev

    -device flash,image=...,base=...,overlay=...,overlay_start=...

Images should be addressed by block device IDs and created via '-drive'
(likely requires a new interface type 'flash'). That way you could
define the bios overlay as "snapshot" so that the guest could happily
corrupt it, but restarting the VM would pick up a well-defined version


Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux

reply via email to

[Prev in Thread] Current Thread [Next in Thread]