mirror of https://github.com/acidanthera/audk.git
OvmfPkg/README: Add information about OVMF flash layout
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14836 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
9a08997862
commit
e58e5bcd23
|
@ -179,6 +179,43 @@ longer.)
|
|||
VirtioNetDxe | x
|
||||
Intel PROEFI | x
|
||||
|
||||
=== OVMF Flash Layout ===
|
||||
|
||||
Like all current IA32/X64 system designs, OVMF's firmware
|
||||
device (rom/flash) appears in QEMU's physical address space
|
||||
just below 4GB (0x100000000).
|
||||
|
||||
The layout of the firmware device in memory looks like:
|
||||
|
||||
+--------------------------------------- 4GB (0x100000000)
|
||||
| VTF0 (16-bit reset code) and OVMF SEC
|
||||
| (SECFV)
|
||||
+--------------------------------------- varies based on flash size
|
||||
|
|
||||
| Compressed main firmware image
|
||||
| (FVMAIN_COMPACT)
|
||||
|
|
||||
+--------------------------------------- base + 0x20000
|
||||
| Fault-tolerant write (FTW)
|
||||
| Spare blocks (64KB/0x10000)
|
||||
+--------------------------------------- base + 0x10000
|
||||
| FTW Work block (4KB/0x1000)
|
||||
+--------------------------------------- base + 0x0f000
|
||||
| Event log area (4KB/0x1000)
|
||||
+--------------------------------------- base + 0x0e000
|
||||
| Non-volatile variable storage
|
||||
| area (56KB/0xe000)
|
||||
+--------------------------------------- base address
|
||||
|
||||
OVMF supports building a 1MB or a 2MB flash image. The base address for
|
||||
a 1MB image in QEMU physical memory is 0xfff00000. The base address for
|
||||
a 2MB image is 0xffe00000.
|
||||
|
||||
The code in SECFV locates FVMAIN_COMPACT, and decompresses the
|
||||
main firmware (MAINFV) into RAM memory at address 0x800000. The
|
||||
remaining OVMF firmware then uses this decompressed firmware
|
||||
volume image.
|
||||
|
||||
=== UNIXGCC Debug ===
|
||||
|
||||
If you build with the UNIXGCC toolchain, then debugging will be disabled
|
||||
|
|
Loading…
Reference in New Issue