On 2011-03-10 23:10, Carl-Daniel Hailfinger wrote: > Auf 10.03.2011 22:55, Jordan Justen schrieb: >> On Thu, Mar 10, 2011 at 13:37, Carl-Daniel Hailfinger >> <c-d.hailfinger.devel.2...@gmx.net> wrote: >> >>> Auf 10.03.2011 05:51, Jordan Justen schrieb: >>> >>>> 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. >>>> >>>> >>> Is there any reason why you chose to invent an interface for the flash >>> chip which is more complicated than the interface used by common flash >>> chips out there? >>> Maybe some EFI requirement? >>> >> This is a simpler version than the flash devices I'm used to dealing >> with for x86/x86-64 UEFI systems. Can you suggest an alternative real >> interface that is simpler? >> > > Pseudocode for the real interface most common on x86 before SPI came along: > > Write a page (256 bytes) or a few bytes: > chip_writeb(0xAA, bios_base + 0x5555); > chip_writeb(0x55, bios_base + 0x2AAA); > chip_writeb(0xA0, bios_base + 0x5555); > chip_writeb(databyte0, bios_base + addr); > chip_writeb(databyte1, bios_base + addr + 1); > chip_writeb(databyte2, bios_base + addr + 2); > chip_writeb(databyte3, bios_base + addr + 3); > ... up to 256 databytes. > chip_readb(bios_base); > The last chip_readb(bios_base) is repeated until the result does not > change anymore.
Hmm, I may oversee some subtle difference, but this looks pretty much like CFI to me (see hw/pflash_cfi02.c). At least it's an in-band interface, which is the better choice as we currently only have a PIIX3 southbridge for x86, predating even FWHs. Jan
signature.asc
Description: OpenPGP digital signature