blob: aee3aa681975e72d68f2eb9c6fa1302aa06d6d0b [file] [log] [blame]
jljusten49ba9442009-05-27 21:10:18 +00001
2=== OVMF OVERVIEW ===
3
4The Open Virtual Machine Firmware (OVMF) project aims
5to support firmware for Virtual Machines using the edk2
6code base. More information can be found at:
7
8 https://edk2.tianocore.org/OVMF.html
9
10=== STATUS ===
11
12Current status: Alpha
13
14Current capabilities:
15* IA32 and X64 architectures
16* QEMU (0.9.1 or later)
17 - Video, keyboard, IDE, CD-ROM, serial
18 - Runs UEFI shell
19* UEFI Linux has booted (but is not stable)
20
21=== FUTURE PLANS ===
22
23* Stabilize UEFI Linux boot
24* Test/Stabilize UEFI Self-Certification Tests (SCT) results
25
jljusten37e97c52009-05-28 18:02:25 +000026=== BUILDING OVMF ===
27
28Pre-requisites:
29* Build environment capable of build the edk2 MdeModulePkg.
30* A properly configured ASL compiler
31 * Intel ASL compiler: Available from http://www.acpica.org
32 or
33 * Microsoft ASL compiler: Available from http://www.acpi.info
34
35Update Conf/target.txt ACTIVE_PLATFORM for OVMF:
36 PEI arch DXE arch UEFI interfaces
37* OvmfPkg/OvmfPkgIa32.dsc IA32 IA32 IA32
38* OvmfPkg/OvmfPkgIa32X64.dsc IA32 X64 X64
39* OvmfPkg/OvmfPkgX64.dsc X64 X64 X64
40
jljusten2dae09a2009-07-14 23:32:44 +000041Update Conf/target.txt TARGET_ARCH based on the .dsc file:
42 TARGET_ARCH
43* OvmfPkg/OvmfPkgIa32.dsc IA32
44* OvmfPkg/OvmfPkgIa32X64.dsc IA32 X64
45* OvmfPkg/OvmfPkgX64.dsc X64
46
47Following the edk2 build process, you will find the OVMF binaries
48under the $WORKSPACE/Build/*/*/FV directory. The actual path will
49depend on how your build is configured. You can expect to find
50these binary outputs:
51* OVMF.fd
52* CirrusLogic5446.rom
53
54More information on building OVMF can be found at:
55* https://edk2.tianocore.org/build-ovmf.html
jljusten37e97c52009-05-28 18:02:25 +000056
57=== RUNNING OVMF on QEMU ===
58
59* QEMU 0.9.1 or later is required.
60* Either copy, rename or symlink OVMF.fd => bios.bin
jljusten2dae09a2009-07-14 23:32:44 +000061* Either copy, rename or symlink CirrusLogic5446.rom => vgabios-cirrus.bin
jljusten37e97c52009-05-28 18:02:25 +000062* Be sure to use qemu-system-x86_64, if you are using and X64 firmware.
63 (qemu-system-x86_64 works for the IA32 firmware as well, of course.)
jljusten2dae09a2009-07-14 23:32:44 +000064* Use the QEMU -L parameter to specify the directory where the bios.bin
65 and vgabios-cirrus.bin files are located.
jljusten37e97c52009-05-28 18:02:25 +000066* Optionally you can use the QEMU -serial command to capture the
67 OVMF debug messages. For example: -serial file:serial.log
68* The EFI shell is built into OVMF builds at this time, so it should
69 run automatically if a UEFI boot application is not found on the
70 removable media.
71