qemu-devel
[Top][All Lists]
Advanced

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

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


From: Jordan Justen
Subject: Re: [Qemu-devel] Re: RFC: emulation of system flash
Date: Thu, 10 Mar 2011 14:05:44 -0800

On Thu, Mar 10, 2011 at 13:41, Carl-Daniel Hailfinger
<address@hidden> wrote:
> Auf 10.03.2011 12:48, Gleb Natapov schrieb:
>> Yes we can make memory slot that will be treated as memory on read and
>> IO on write, but first relying on that will prevent using flash interface
>> on older kernels and second it is not enough to implement the proposal.
>> When magic value is written into an address, the address become IO for
>> reading too, but KVM slot granularity is page, not byte, so KVM will
>> have to remove the slot to make it IO, but KVM can't execute code from
>> IO region (yet), so we will not be able to run firmware from flash and
>> simultaneously write into the flash.
>>
>
> If you have a Parallel/LPC/FWH flash chip in your mainboard, it is
> technically impossible to execute code from flash while you are writing
> to _any_ part of the flash chip because every single read from the flash
> chip during an active write will toggle one bit of the read data.
> So if your code already runs on real x86, you will never hit that problem.
>
> (SPI flash is an exception, but it uses out-of-band access anyway,
> usually via some southbridge interface, and that means the IO vs.
> execution conflict won't happen there either.)

I've not seen a firmware that attempts to update flash while also
executing from flash.  For OVMF or UEFI, I don't would not think this
should be a requirement.  (Although, my proposal would support this.)

-Jordan



reply via email to

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