Commit Graph

19 Commits

Author SHA1 Message Date
jljusten 9b167857a4 OvmfPkg PlatformBdsLib: Set SCI_EN bit of PMCNTRL
If the bit is not set, then the only method ACPI defines
for setting it is to use the SMI SCI enable code path.

Since OVMF does not support SMM, we must enable the
bit during boot.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Bei Guan <gbtju85@gmail.com>
Reviewed-by: Bei Guan <gbtju85@gmail.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13278 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-04 15:01:56 +00:00
rsun3 94020bb40f Improve robustness when scanning PCI Option ROM.
Signed-off-by: rsun3
Reviewed-by: geekboy15a


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13095 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-14 03:17:17 +00:00
jljusten 3d131d1a20 OVMF BDS: Don't call BdsLibSaveMemoryTypeInformation
This call can cause a reset, and is most critical for ACPI S3/S4
resume situations.  OVMF does not support S3/S4.

OVMF does not have true non-volatile variable support, so
this call could cause a continuous reset situation in certain
scenarios.  (The BdsLibSaveMemoryTypeInformation may set an
non-volatile variable, and then reset with the assumption that
the variable will still exist during the next boot.)

Additionally, some version of QEMU appear to hang when the
port 64 reset is initiated.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10927 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-13 07:07:16 +00:00
mdkinney 8df3a682fe Update OVMF BDS Library to call GenericBdsLib function to save gEfiMemoryTypeInformation
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10627 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-04 19:57:45 +00:00
hhtian 56d7640a53 Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10439 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-28 12:43:04 +00:00
jljusten 8861fc792c Add missing EFIAPI instances on several functions.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9570 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-16 23:28:46 +00:00
jljusten 9607962def OVMF: Add support for saving the NV variables to disk following each SetVariable call.
Note:
* This only works before ExitBootServices
* For OVMF, variables are only preserved on the disk if there
  is a hard disk connected which has a writeable FAT file system.

The Ovmf/Library/EmuVariableFvbLib library will look for the
gUefiOvmfPkgTokenSpaceGuid.PcdEmuVariableEvent PCD to be set to
a non-zero value.  If set, it is treated as an event handle, and
each write to the EmuVariableFvb will cause the event to be
signaled.

In this change, the OVMF platform BDS library sets up this event,
and sets the PCD so that after each write to the EMU Variable FVB,
the non-volatile variables will be saved out to the file system.

The end result is that NV variables that are written prior to the
ExitBootServices call should be preserved by storing them on the
disk.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9318 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-26 07:15:55 +00:00
qhuang8 7d9cf3f25e Fix several build break in Ovmf package.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9292 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-21 14:20:11 +00:00
jljusten 14b21de964 OVMF BDS: Make use of NvVarsFileLib to make NV variable less volatile.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9275 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-16 16:29:03 +00:00
jljusten e955462be2 OVMF BDS: Implement routines to make it easier to scan through all PCI devices.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9274 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-16 16:29:00 +00:00
jljusten 607ca5102e OVMF: Fix a hang after resetting when NV variables are preserved.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9242 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-07 20:18:19 +00:00
eric_tian ccd4b7dade fix ICC build issue.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8974 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-21 01:57:27 +00:00
jljusten 5106d42295 Load video option ROM which is not embedded in system firmware image.
QEMU will automatically fill the video BIOS image into memory at the
legacy video BIOS memory location (0xc0000).  This code will look
there for a EFI option rom image, and load it if it found.  This
allows the video option ROM to be separated out from the main system
firmware image.

QEMU does not appear to emulate the PCI rom expansion method
for making the video BIOS available to the system.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8942 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-14 23:32:32 +00:00
eric_tian d18476d0dc ProcessCapsule() and BdsMemoryTest() are implemented in the BdsDxe module, which will be invoked at PlatformBds library.
It is not proper for a library implementation to assume the names of function in a parent module.
Instead, they must be designed as the pointers to these two BdsDxe functions and passed in.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8931 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-13 12:07:26 +00:00
lgao4 24cdd14e81 Move LockKeyboards API from GenericBdsLib to PlatformBdsLib
And change PlatformBdsLockNonUpdatableFlash in PlatformBdsLib return type to VOID.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8855 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-10 03:26:52 +00:00
lgao4 d46f36324f Retire Logo and Shell guid header file, which are replaced by gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile and gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8829 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-09 05:48:35 +00:00
jljusten 40f2c45434 * Modify various PCI register settings for OVMF.
* Clear the screen following connect-all so the logo does not
  appear over the shell text.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8691 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-30 15:57:35 +00:00
mdkinney 370ec7f1b0 Remove EFI_BDS_ARCH_PROTOCOL_INSTANCE from PlatformBdsLib.h and BdsDxe module
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8494 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-07 04:44:53 +00:00
jljusten 49ba9447c9 Add initial version of Open Virtual Machine Firmware (OVMF) platform.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8398 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-27 21:10:18 +00:00