1fea9ddb4e3fd696f54ab3d9dbf4d905f59113b1 |
|
07-Jan-2016 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: execute option ROM images regardless of Secure Boot Change the image verification policy for option ROM images to 0x00 (ALWAYS_EXECUTE). While this may not be a good idea for physical platforms (see e.g. <https://trmm.net/Thunderstrike>), on the QEMU platform the benefits seem to outweigh the drawbacks: - For QEMU's virtual PCI devices, and for some assigned PCI devices, the option ROMs come from host-side files, which can never be rewritten from within the guest. Since the host admin has full control over a guest anyway, executing option ROMs that originate from host-side files presents no additional threat to the guest. - For assigned physical PCI devices with option ROMs, the argument is not so clear-cut. In theory a setup could exist where: - the host-side UEFI firmware (with DENY_EXECUTE_ON_SECURITY_VIOLATION) rejects the option ROM of a malicious physical PCI device, but - when the device is assigned to the guest, OVMF executes the option ROM in the guest, - the option ROM breaks out of the guest (using an assumed QEMU vulnerability) and gains QEMU user privileges on the host. However, in order to escalate as far as it would happen on the bare metal with ALWAYS_EXECUTE (i.e., in order to gain firmware-level access on the host), the malicious option ROM would have to break through (1) QEMU, (2) traditional UID and GID based privilege separation on the host, (3) sVirt (SELinux) on the host, (4) the host OS - host firmware boundary. This is not impossible, but not likely enough to discourage the use cases below. - This patch makes it possible to use unsigned iPXE network drivers that QEMU presents in the option ROMs of virtual NICs and assigned SR-IOV VFs, even if Secure Boot is in User Mode or Deployed Mode. - The change also makes it possible to execute unsigned, outdated (revoked), or downright malicious option ROMs of assigned physical devices in guests, for corporate, entertainment, academia, or security research purposes. Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Chao Zhang <chao.b.zhang@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19614 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
65d2bf42235d04f6e12ac80b661ab4aa0484bd6e |
|
07-Jan-2016 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: inherit Image Verification Policy defaults from SecurityPkg Secure Boot support was originally addded to OvmfPkg on 2012-Mar-09, in SVN r13093 (git 8cee3de7e9f4), titled OvmfPkg: Enable secure-boot support when SECURE_BOOT_ENABLE==TRUE At that time the image verification policies in SecurityPkg/SecurityPkg.dec were: - option ROM image: 0x00 (ALWAYS_EXECUTE) - removable media image: 0x05 (QUERY_USER_ON_SECURITY_VIOLATION) - fixed media image: 0x05 (QUERY_USER_ON_SECURITY_VIOLATION) The author of SVN r13093 apparently didn't want to depend on the SecurityPkg defaults for the latter two image origins, plus the ALWAYS_EXECUTE policy for option ROM images must have been deemed too lax. For this reason SVN r13093 immediately spelled out 0x05 (QUERY_USER_ON_SECURITY_VIOLATION) within OvmfPkg for all three image origins. Fast forward to 2013-Aug-28: policy 0x05 (QUERY_USER_ON_SECURITY_VIOLATION) had been forbidden in the UEFI spec, and SVN r14607 (git db44ea6c4e09) reflected this in the source code: - The policies for the latter two image origins were switched from 0x05 to 0x04 (DENY_EXECUTE_ON_SECURITY_VIOLATION) in SecurityPkg, - the patch changed the default policy for option ROM images too, from 0x00 (ALWAYS_EXECUTE) to 0x04 (DENY_EXECUTE_ON_SECURITY_VIOLATION), - any other client DSC files, including OvmfPkg's, underwent a whole-sale 0x05 (QUERY_USER_ON_SECURITY_VIOLATION) -> 0x04 (DENY_EXECUTE_ON_SECURITY_VIOLATION) replacement too. The practical result of that patch for OvmfPkg was that the explicit 0x04 settings would equal the strict SecurityPkg defaults exactly. And that's what we have today: the "override the default values from SecurityPkg" comments in OvmfPkg's DSC files are stale, in practice. It is extremely unlikely that SecurityPkg would change the defaults from 0x04 (DENY_EXECUTE_ON_SECURITY_VIOLATION) any time in the future, so let's just inherit those in OvmfPkg. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Chao Zhang <chao.b.zhang@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19613 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
46df0216b0edad0c4858ba01fd913ec34e9540c3 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: pull in SMM-based variable driver stack When -D SMM_REQUIRE is given, replace both - OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf and - OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf with - OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf. The outermost (= runtime DXE driver) VariableSmmRuntimeDxe enters SMM, and the rest: - the privileged half of the variable driver, VariableSmm, - the fault tolerant write driver, FaultTolerantWriteSmm, - and the FVB driver, FvbServicesSmm, work in SMM purely. We also resolve the BaseCryptLib class for DXE_SMM_DRIVER modules, for the authenticated VariableSmm driver's sake. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19065 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
1b0a8e628144628def46c450a4d357b62766cc84 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: consolidate variable driver stack in DSC and FDF files The following modules constitute the variable driver stack: - QemuFlashFvbServicesRuntimeDxe and EmuVariableFvbRuntimeDxe, runtime alternatives for providing the Firmware Volume Block(2) Protocol, dependent on qemu pflash presence, - FaultTolerantWriteDxe, providing the Fault Tolerant Write Protocol, - MdeModulePkg/Universal/Variable/RuntimeDxe, independently of -D SECURE_BOOT_ENABLE, providing the Variable and Variable Write Architectural Protocols. Let's move these drivers closer to each other in the DSC and FDF files, so that we can switch the variable driver stack to SMM with more local changes. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19064 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
0d5d4205e3c2a9f6a223203f9023b16c395ca334 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: build PiSmmCpuDxeSmm for -D SMM_REQUIRE At this point we can enable building PiSmmCpuDxeSmm. CPU specific features, like SMRR detection, and functions that are used to initialize SMM and process SMIs, are abstracted through the SmmCpuFeaturesLib class for the PiSmmCpuDxeSmm module. Resolve it to our own implementation under OvmfPkg -- it allows PiSmmCpuDxeSmm to work with QEMU's and KVM's 64-bit state save map format, which follows the definition from AMD's programmer manual. SmmCpuPlatformHookLib provides platform specific functions that are used to initialize SMM and process SMIs. Resolve it to the one Null instance provided by UefiCpuPkg, which is expected to work for most platforms. Cc: Paolo Bonzini <pbonzini@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> [pbonzini@redhat.com: resolve the SmmCpuFeaturesLib class to OVMF's own instance] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19061 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
92b87f1c8c0b639315545248488241aee71c51e8 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: build CpuS3DataDxe for -D SMM_REQUIRE The PiSmmCpuDxeSmm driver from UefiCpuPkg depends on the ACPI_CPU_DATA structure -- created by a platform- and CPU-specific driver -- in order to support ACPI S3. The address of this structure is communicated through the dynamic PCD PcdCpuS3DataAddress. The "UefiCpuPkg/Include/AcpiCpuData.h" header file documents the fields of this structure in detail. The simple/generic "UefiCpuPkg/CpuS3DataDxe" driver creates and populates the structure in a conformant way, and it co-operates well with PiSmmCpuDxeSmm, for OVMF's purposes. PlatformBdsLib CpuS3DataDxe PiSmmCpuDxeSmm S3Resume2Pei (DXE_DRIVER) (DXE_DRIVER) (DXE_SMM_DRIVER) (PEIM) -------------- --------------- ---------------- -------------- normal collects data boot except MTRR settings into ACPI_CPU_DATA sets PcdCpuS3Da... signals End-of-Dxe | +----------> collects MTRR settings into ACPI_CPU_DATA installs [Dxe]Smm ReadyToLock | +---------------------------> fetches PcdCpuS3Dat... copies ACPI_CPU_DATA into SMRAM runtime S3 suspend S3 transfers resume control to PiSmmCpuDxe... | uses <----+ ACPI_CPU_DATA from SMRAM Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19060 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
bb0f18b0bce682f6780af997de45bcef146c11ca |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: any AP in SMM should not wait for the BSP for more than 100 ms This patch complements the previous one, "OvmfPkg: use relaxed AP SMM synchronization mode". While that patch focuses on the case when the SMI is raised synchronously by the BSP, on the BSP: BSPHandler() [UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c] SmmWaitForApArrival() [UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c] IsSyncTimerTimeout() [UefiCpuPkg/PiSmmCpuDxeSmm/SyncTimer.c] this patch concerns itself with the case when it is one of the APs that raises (and sees delivered) the synchronous SMI: APHandler() [UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c] IsSyncTimerTimeout() [UefiCpuPkg/PiSmmCpuDxeSmm/SyncTimer.c] Namely, in APHandler() the AP waits for the BSP to enter SMM regardless of PcdCpuSmmSyncMode, for PcdCpuSmmApSyncTimeout microseconds (the default value is 1 second). If the BSP doesn't show up in SMM within that interval, then the AP brings it in with a directed SMI, and waits for the BSP again for PcdCpuSmmApSyncTimeout microseconds. Although during boot services, SmmControl2DxeTrigger() is only called by the BSP, at runtime the OS can invoke runtime services from an AP (it can even be forced with "taskset -c 1 efibootmgr"). Because on QEMU SmmControl2DxeTrigger() only raises the SMI for the calling processor (BSP and AP alike), the first interval above times out invariably in such cases -- the BSP never shows up before the AP calls it in. In order to mitigate the performance penalty, decrease PcdCpuSmmApSyncTimeout to one tenth of its default value: 100 ms. (For comparison, Vlv2TbltDevicePkg sets 1 ms.) NOTE: once QEMU becomes capable of synchronous broadcast SMIs, this patch and the previous one ("OvmfPkg: use relaxed AP SMM synchronization mode") should be reverted, and SmmControl2DxeTrigger() should be adjusted instead. Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19059 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
9b1e378811ff730fe4e5bbbba294ea74ef76a915 |
|
30-Nov-2015 |
Paolo Bonzini <pbonzini@redhat.com> |
OvmfPkg: use relaxed AP SMM synchronization mode Port 0xb2 on QEMU only sends an SMI to the currently executing processor. The SMI handler, however, and in particular SmmWaitForApArrival, currently expects that SmmControl2DxeTrigger triggers an SMI IPI on all processors rather than just the BSP. Thus all SMM invocations loop for a second (the default value of PcdCpuSmmApSyncTimeout) before SmmWaitForApArrival sends another SMI IPI to the APs. With the default SmmCpuFeaturesLib, 32-bit machines must broadcast SMIs because 32-bit machines must reset the MTRRs on each entry to system management modes (they have no SMRRs). However, our virtual platform does not have problems with cacheability of SMRAM, so we can use "directed" SMIs instead. To do this, just set gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode to 1 (aka SmmCpuSyncModeRelaxedAp). This fixes SMM on multiprocessor virtual machines. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19058 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
896d3dcf25f0bc90d5d0d4aed939a487f971f4b0 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: set gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmEnableBspElection to FALSE Explanation from Michael Kinney: This PCD allows a platform to provide PlatformSmmBspElection() in a platform specific SmmCpuPlatformHookLib instance to decide which CPU gets elected to be the BSP in each SMI. The SmmCpuPlatformHookLibNull [instance] always returns EFI_NOT_READY for that function, which makes the module behave the same as the PCD being set to FALSE. The default is TRUE, so the platform lib is always called, so a platform developer can implement the hook function and does not have to also change a PCD setting for the hook function to be active. A platform that wants to eliminate the call to the hook function [altogether] can set the PCD to FALSE. So for OVMF, I think it makes sense to set this PCD to FALSE in the DSC file. Suggested-by: Michael Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19053 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
decb365b0016bee2597250903366e02c0e47cc02 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: select LocalApicLib instance with x2apic support Although neither LocalApicLib instance is suitable for runtime DXE drivers (because they access the APIC at the physical address retrieved from either MSR_IA32_APIC_BASE_ADDRESS or PcdCpuLocalApicBaseAddress), they are suitable for SMM drivers -- SMM drivers are not influenced by the runtime OS's virtual address map. PiSmmCpuDxeSmm links against LocalApicLib. 64-bit Linux guests tend to enable x2apic mode even in simple VCPU configurations (e.g., 4 sockets, 1 core/socket, 1 thread/core): [ 0.028173] x2apic enabled If PiSmmCpuDxeSmm was linked with the BaseXApicLib instance (i.e., with no x2apic support), then the next runtime service call that is backed by an SMM driver triggers the following ASSERT in BaseXApicLib (because the latter notices that x2apic has been enabled, which it doesn't support): ASSERT .../UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.c(263): ApicBaseMsr.Bits.Extd == 0 It is reasonable to give all LocalApicLib client modules in OVMF the same level of x2apic support, hence resolve LocalApicLib globally to BaseXApicX2ApicLib. This will not be conditional on -D SMM_REQUIRE, because BaseXApicX2ApicLib is compatible with BaseXApicLib in any environment where the latter can be used. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19052 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
cbd5d723d5249de91c560db517a88ec841de6dc4 |
|
30-Nov-2015 |
Michael Kinney <michael.d.kinney@intel.com> |
OvmfPkg: resolve DebugAgentLib for DXE_SMM_DRIVER modules Add mappings to DebugAgentLib for SMM modules to prevent build breaks when SMM_REQUIRE and SOURCE_DEBUG_ENABLE are both set. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> [lersek@redhat.com: cover the X64 dsc, update commit msg, kudos Jordan] Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19051 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c30ff8f401697ea29040d03c5c09e9a38dd27985 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: resolve CpuExceptionHandlerLib for DXE_SMM_DRIVER modules UefiCpuPkg/PiSmmCpuDxeSmm depends on this library (the RegisterCpuInterruptHandler() function specifically) to set up its specialized page fault handler (SmiPFHandler() -> DumpModuleInfoByIp()). It doesn't hurt to resolve this library class for all DXE_SMM_DRIVER modules. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19050 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
fc5b5e5ce0b1054c9e103af70a028404e55a4697 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: resolve ReportStatusCodeLib for DXE_SMM_DRIVER modules PiSmmCpuDxeSmm depends on this library class, and it's okay to resolve it generally for all DXE_SMM_DRIVER modules. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19049 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
67d8659474a051f58a5f30d4c8fba970a5d3be2c |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: LockBox: use SMM stack with -D SMM_REQUIRE During DXE, drivers save data in the LockBox. A save operation is layered as follows: - The unprivileged driver wishing to store data in the LockBox links against the "MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf" library instance. The library allows the unprivileged driver to format requests for the privileged SMM LockBox driver (see below), and to parse responses. We apply this resolution for DXE_DRIVER modules. - The privileged SMM LockBox driver is built from "MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf". This driver has module type DXE_SMM_DRIVER and can access SMRAM. The driver delegates command parsing and response formatting to "MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf". Therefore we include this DXE_SMM_DRIVER in the build, and apply said resolution specifically to it. (Including the driver requires us to resolve a few of other library classes for DXE_SMM_DRIVER modules.) - In PEI, the S3 Resume PEIM (UefiCpuPkg/Universal/Acpi/S3Resume2Pei) retrieves data from the LockBox. It is capable of searching SMRAM itself. We resolve LockBoxLib to "MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf" specifically for this one PEIM. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19048 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
8dbe742d17071f81392923e67fda45696438a831 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: pull in CpuIo2Smm driver This driver provides EFI_SMM_CPU_IO2_PROTOCOL, which the SMM core depends on in its gEfiDxeSmmReadyToLockProtocolGuid callback (SmmReadyToLockHandler(), "MdeModulePkg/Core/PiSmmCore/PiSmmCore.c"). Approached on a higher level, this driver provides the SmmIo member of the EFI_SMM_SYSTEM_TABLE2 (SMST). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19044 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
f25cb158eaee82a3c8f17c8a2ff85a55d5a17d3a |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: pull in the SMM IPL and SMM core "MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf" (a DXE_RUNTIME_DRIVER) implements the SMM Initial Program Loader. It produces EFI_SMM_BASE2_PROTOCOL and EFI_SMM_COMMUNICATION_PROTOCOL, relying on: - EFI_SMM_ACCESS2_PROTOCOL (provided by OvmfPkg/SmmAccess/SmmAccess2Dxe.inf), - EFI_SMM_CONTROL2_PROTOCOL (provided by OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf). (The SMM IPL also depends on EFI_SMM_CONFIGURATION_PROTOCOL_GUID, but this dependency is not enforced in the entry point. A protocol notify callback is registered instead, hence we can delay providing that protocol via the PiSmmCpuDxeSmm driver that is (to be) imported from UefiCpuPkg/.) The SMM IPL loads the SMM core into SMRAM and executes it from there. Therefore we add the SMM core to the build as well. For the SMM core, a number of library classes need to be resolved. Furthermore, each FDF file must provide the GenFds.py BaseTools utility with a build rule for SMM_CORE; we copy the DXE_CORE's rule. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19043 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c40e1a0cc65315d3bbf370caece7daf539009e58 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: implement EFI_SMM_CONTROL2_PROTOCOL with a DXE_RUNTIME_DRIVER The EFI_SMM_COMMUNICATION_PROTOCOL implementation that is provided by the SMM core depends on EFI_SMM_CONTROL2_PROTOCOL; see the mSmmControl2->Trigger() call in the SmmCommunicationCommunicate() function [MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c]. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19042 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c5b7c805a8de824b59f7ae7e9fd9df5bd4fd24bc |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: add DXE_DRIVER for providing TSEG-as-SMRAM during boot-time DXE The SMM core depends on EFI_SMM_ACCESS2_PROTOCOL. This small driver (which is a thin wrapper around "OvmfPkg/SmmAccess/SmramInternal.c" that was added in the previous patch) provides that protocol. Notably, EFI_SMM_ACCESS2_PROTOCOL is for boot time only, therefore our MODULE_TYPE is not DXE_RUNTIME_DRIVER. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19041 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
9d560947f6d35790306f495a69c22fbb1a3656ff |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: add PEIM for providing TSEG-as-SMRAM during PEI "MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf" is the LockBoxLib instance with SMRAM access for the PEI phase. Said library instance must, and can, access the LockBox data in SMRAM directly if it is invoked before SMBASE relocation / SMI handler installation. In that case, it only needs PEI_SMM_ACCESS_PPI from the platform, and it doesn't depend on EFI_PEI_SMM_COMMUNICATION_PPI. OVMF satisfies the description in SVN r18823 ("MdeModulePkg: SmmLockBoxPeiLib: work without EFI_PEI_SMM_COMMUNICATION_PPI"): in OVMF, only S3Resume2Pei links against SmmLockBoxPeiLib. Therefore, introduce a PEIM that produces the PEI_SMM_ACCESS_PPI interface, enabling SmmLockBoxPeiLib to work; we can omit including "UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationPei.inf". The load / installation order of S3Resume2Pei and SmmAccessPei is indifferent. SmmAccessPei produces the gEfiAcpiVariableGuid HOB during its installation (which happens during PEI), but S3Resume2Pei accesses the HOB only when the DXE IPL calls its S3RestoreConfig2 PPI member, as last act of PEI. MCH_SMRAM_D_LCK and MCH_ESMRAMC_T_EN are masked out the way they are, in SmmAccessPeiEntryPoint() and SmramAccessOpen() respectively, in order to prevent VS20xx from warning about the (otherwise fully intentional) truncation in the UINT8 casts. (Warnings reported by Michael Kinney.) Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19040 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
1f695483e6bc2be8054d2cc677662e7df61e3962 |
|
30-Nov-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: introduce -D SMM_REQUIRE and PcdSmmSmramRequire This build time flag and corresponding Feature PCD will control whether OVMF supports (and, equivalently, requires) SMM/SMRAM support from QEMU. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19034 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
ddd89cd50dd3a989e58a75ed38011168e3ec0954 |
|
30-Sep-2015 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
OvmfPkg: set 4 KB section alignment for DXE_RUNTIME_DRIVER modules Increase the section alignment to 4 KB for DXE_RUNTIME_DRIVER modules. This allows the OS to map them with tightened permissions (i.e., R-X for .text and RW- for .data). This is a prerequisite for enabling the EFI_PROPERTIES_RUNTIME_MEMORY_PROTECTION_NON_EXECUTABLE_PE_DATA (sic) feature that was introduced in UEFIv2.5. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18564 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
b2f88ffdb2cc44b20df061cadf836ae45bd48f16 |
|
25-Sep-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: build the TFTP command into the UEFI shell The TFTP command is easy to use, it has very nice documentation (accessible with "HELP TFTP" in the shell), and it's a very versatile tool for downloading files from the host to the guest, via virtual network, while the guest is in the UEFI shell. Even better, enabling this command in the shell increases the uncompressed DXEFV size only by 12896 bytes, in my X64 build, and the final size increase (after LZMA compression) that is visible in the FVMAIN_COMPACT volume is merely 2576 bytes. Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18554 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
b82802b83f069c7322337b802a744491010cbfb1 |
|
22-Sep-2015 |
Reza Jelveh <reza.jelveh@tuhh.de> |
OvmfPkg: enable SATA controller In this patch, we replace the traditional IDE driver stack that comes from PcAtChipsetPkg and IntelFrameworkModulePkg with more featureful drivers from OvmfPkg and MdeModulePkg. The resultant driver stack is compatible with the previous one, but provides more protocols, on more kinds of virtual hardware. Remove: - PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf (removing EFI_IDE_CONTROLLER_INIT_PROTOCOL [1]) Remove the dependent: - IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf (removing EFI_DISK_INFO_PROTOCOL [2], EFI_BLOCK_IO_PROTOCOL [3]) As replacement, add: - OvmfPkg/SataControllerDxe/SataControllerDxe.inf (supplying EFI_IDE_CONTROLLER_INIT_PROTOCOL [1]) On top of which, add the dependent: - MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf (providing EFI_ATA_PASS_THRU_PROTOCOL, EFI_EXT_SCSI_PASS_THRU_PROTOCOL) On top of which, add the dependent: - MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf (supplying EFI_DISK_INFO_PROTOCOL [2], EFI_BLOCK_IO_PROTOCOL [3], providing EFI_BLOCK_IO2PROTOCOL, EFI_STORAGE_SECURITY_COMMAND_PROTOCOL) Cc: Alexander Graf <agraf@suse.de> Cc: Reza Jelveh <reza.jelveh@tuhh.de> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Hannes Reinecke <hare@suse.de> Cc: Gabriel L. Somlo <somlo@cmu.edu> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Reza Jelveh <reza.jelveh@tuhh.de> [lersek@redhat.com: rewrote commit message] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18532 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
d20b06a3afdf9335b6c71ff56e31003cbe1cd0c1 |
|
15-Sep-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: disable no-exec DXE stack by default (PcdSetNxForStack == TRUE) breaks a number of GRUB versions that, it turns out, are still widely in use. Disable PcdSetNxForStack by default for now. QEMU users can enable it dynamically using the micro-feature added in the previous patch. Reported-by: Anthony Perard <anthony.perard@citrix.com> Cc: Jan Beulich <JBeulich@suse.com> Cc: Ian Campbell <Ian.Campbell@citrix.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Josh Triplett <josh@joshtriplett.org> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Acked-by: Ian Campbell <Ian.Campbell@citrix.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18472 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c075d250f6f2358a7c1b19798935d14d716bd67b |
|
15-Sep-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: make PcdPropertiesTableEnable dynamic Since PcdPropertiesTableEnable is used by the DXE Core (in the InstallPropertiesTable() function, which runs at End-of-Dxe), we must also change the PcdLib class resolution for that module, from the default BasePcdLibNull to DxePcdLib. Traditionally we've considered the DXE Core to be incapable of accessing dynamic PCDs -- the PCD PPI is not available any longer to the DXE Core, and the PCD Protocol is not available to it *yet*. There are exceptions however: if the DXE Core can ensure, by whatever means, that the PCD Protocol *is* available, then DxePcdLib will just work (the latter even lists DXE_CORE as an allowed client module type). Namely, DxePcdLib looks up the PCD Protocol dynamically, on the first library call that actually needs it (for accessing a dynamic PCD); the lookup doesn't occur in a library constructor. And because the DXE Core fetches PcdPropertiesTableEnable at End-of-Dxe, the PCD Protocol is definitely available then. In addition, we change the default value of PcdPropertiesTableEnable from the inherited TRUE to FALSE. It makes no difference at this point (our runtime DXE drivers are not built with the required 4KB section alignment anyway), but it's better to be clear about this. The properties table feature requires OS compatibility, and it breaks Windows 7 minimally. Therefore the default should be FALSE. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Star Zeng <star.zeng@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18470 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
d26753f8358c47091f380b9c9cd8081c99715e50 |
|
15-Sep-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: make PcdSetNxForStack dynamic Plus, because PcdSetNxForStack is used by the DXE IPL PEIM (in the HandOffToDxeCore() function, and in the CreateIdentityMappingPageTables() function called by the former), we must change the PcdLib class resolution for that module, from the default BasePcdLibNull to PeiPcdLib. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Star Zeng <star.zeng@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18469 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
ead7cb12d5b0e23b55e47f38a8a0675958783668 |
|
28-Aug-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: prevent code execution from DXE stack SVN rev 18166 ("MdeModulePkg DxeIpl: Add stack NX support") enables platforms to request non-executable stack for the DXE phase, by setting PcdSetNxForStack to TRUE. The PCD defaults to FALSE, because: (a) A non-executable DXE stack is a new feature and causes changes in behavior. Some platform could rely on executing code from the stack. (b) The code enabling NX in the DXE IPL PEIM enforces the PcdSetNxForStack ==> PcdDxeIplBuildPageTables implication for "64-bit PEI + 64-bit DXE" platforms, with a new ASSERT(). Some platform might not comply with this requirement immediately. Regarding (a), in none of the OVMF builds do we try to execute code from the stack. Regarding (b): - In the OvmfPkgX64.dsc build (which is where (b) applies) we simply inherit the PcdDxeIplBuildPageTables|TRUE default from "MdeModulePkg/MdeModulePkg.dec". Therefore we can set PcdSetNxForStack to TRUE. - In OvmfPkgIa32X64.dsc, page tables are built by default for DXE. Hence we can set PcdSetNxForStack to TRUE. - In OvmfPkgIa32.dsc, page tables used not to be necessary until now. After we set PcdSetNxForStack to TRUE in this patch, the DXE IPL will construct page tables even when it is built as part of OvmfPkgIa32.dsc, provided the (virtual) hardware supports both PAE mode and the XD bit. Should this setting cause problems in a GPU (or other device) passthru scenario, with a UEFI_DRIVER in the PCI option rom attempting to execute code from the stack, the feature can be dynamically disabled on the QEMU command line, with "-cpu <MODEL>,-nx". Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: "Zeng, Star" <star.zeng@intel.com> Suggested-by: Paolo Bonzini <pbonzini@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Star Zeng <star.zeng@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18360 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
1a85139d9eac7f260a21a6ecb06a578a5255edf7 |
|
28-Aug-2015 |
Gary Ching-Pang Lin <glin@suse.com> |
OvmfPkg: Build HTTP utilities driver Since SVN r18316 / git 5ca29abe5297, the HTTP driver needs the HTTP utilities driver to parse the headers of HTTP requests. Add the driver into OVMF so that the HTTP driver can work properly. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gary Ching-Pang Lin <glin@suse.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18359 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
dd0ad62d20e3fd56cb0a7aa500d66f3870dff7b6 |
|
25-Aug-2015 |
Star Zeng <star.zeng@intel.com> |
OvmfPkg: Link separated VarCheckUefiLib NULL class library instance Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18288 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
68ef1ad712b7483221ff551250ee32653516bdeb |
|
25-Aug-2015 |
Star Zeng <star.zeng@intel.com> |
OvmfPkg: Add VarCheckLib library mapping Since Variable driver has been updated to consume the separated VarCheckLib. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18281 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
ab44a6e833fa9d0b8565bca8d5cb26d92900bc85 |
|
23-Aug-2015 |
Gary Ching-Pang Lin <glin@suse.com> |
OvmfPkg: Add HttpBoot support This commit introdues a new build option to OvmfPkg: HTTP_BOOT_ENABLE. When HttpBoot is enabled, a new Network boot option will show in the boot manager menu with the device path like this: PciRoot(0x0)/Pci(0x3,0x0)/MAC(525400123456,0x1)/IPv4(0.0.0.0)/Uri() It works like the PXE one but fetches the NBP from the given http url instead of the tftp service. A simple testing environment can be set up with the QEMU tap network and dnsmasq + lighttpd. Here is the example of the dnsmasq config: interface=<tap interface> dhcp-range=192.168.111.100,192.168.111.120,12h dhcp-option=60,"HTTPClient" dhcp-boot="http://<tap ip>/<efi file>" It's similar to the PXE server settings except the tftp function is disabled, the option 60 must be "HTTPClient", and the boot uri is a http url. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gary Ching-Pang Lin <glin@suse.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18258 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c3db5a8c3d3acf4791844c10b89a60552ac3c350 |
|
06-Aug-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: SmbiosVersionLib: recognize SMBIOS 3.x entry point Also set the DocRev field the way QEMU exposes it, because MdeModulePkg/Universal/SmbiosDxe lets us control that field too. Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Wei Huang <wei@redhat.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Gabriel L. Somlo <somlo@cmu.edu> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18182 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
6fbef93e9f134553c322b939c45249540fcfa2c2 |
|
06-Aug-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: introduce PcdQemuSmbiosValidated This dynamic PCD will enable a small code de-duplication between OvmfPkg/SmbiosPlatformDxe and OvmfPkg/Library/SmbiosVersionLib. Since both of those are also used in ArmVirtQemu.dsc, and we should avoid cross-package commits when possible, this patch declares PcdQemuSmbiosValidated first, and sets defaults for it in the OvmfPkg DSC files. Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Wei Huang <wei@redhat.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Gabriel L. Somlo <somlo@cmu.edu> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18178 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
98937dc2939b28139471474764fef11d3ee4fbd9 |
|
06-Aug-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: set SMBIOS version in DetectSmbiosVersionLib instead of PlatformPei This patch de-duplicates the logic added in commit OvmfPkg: PlatformPei: set SMBIOS entry point version dynamically (git 37baf06b, SVN r17676) by hooking DetectSmbiosVersionLib into SmbiosDxe. Although said commit was supposed to work with SMBIOS 3.0 payloads from QEMU, in practice that never worked, because the size / signature checks in SmbiosVersionInitialization() would always fail, due to the SMBIOS 3.0 entry point being structurally different. Therefore this patch doesn't regress OvmfPkg. Cc: Wei Huang <wei@redhat.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Gabriel L. Somlo <somlo@cmu.edu> Suggested-by: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18175 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
d52bde1c29266f245fc7c765b2303386db1e86bc |
|
14-Jul-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: clone PciHostBridgeDxe from PcAtChipsetPkg The source code is copied verbatim, with the following two exceptions: - the UNI files are dropped, together with the corresponding UNI references in the INF file, - the INF file receives a new FILE_GUID. The OVMF DSC and FDF files are at once flipped to the cloned driver. Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Regression-tested-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17951 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
6ceed3a025287e35dad8f88f4ea12e5944d5caa6 |
|
10-Jul-2015 |
Jiaxin Wu <jiaxin.wu@intel.com> |
OvmfPkg: Remove Ip4ConfigDxe module from OvmfPkg Ip4ConfigDxe driver is deprecated in UEFI 2.5, so we will not support original Ip4Config Protocol, which is replace by Ip4Config2 Protocol integrated in Ip4Dxe driver(git commit 1f6729ff (SVN r17853)). Therefore we can remove Ip4ConfigDxe driver from this build. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17914 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
90dcda4774d6d5a324fe5b62653430a07ce97dae |
|
01-Jul-2015 |
Star Zeng <star.zeng@intel.com> |
OvmfPkg: Use the merged Variable driver Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17767 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
285542ebbb03d21d6a91fdef19f1344155617e2b |
|
01-Jul-2015 |
Star Zeng <star.zeng@intel.com> |
OvmfPkg: Link AuthVariableLib for following merged variable driver deploy AuthVariableLib and TpmMeasurementLib library classes are now linked with MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf to optionally support secure variables. For OvmfPkg, link AuthVariableLib and DxeTpmMeasurementLib in SecurityPkg when SECURE_BOOT_ENABLE = TRUE, and link AuthVariableLibNull and TpmMeasurementLibNull in MdeModulePkg when SECURE_BOOT_ENABLE = FALSE. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17760 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
37baf06b44ba78214aca8806b8516575d3b20db6 |
|
22-Jun-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: PlatformPei: set SMBIOS entry point version dynamically Git commit 54753b60 (SVN r16870), "MdeModulePkg: Update SMBIOS revision to 3.0." changed PcdSmbiosVersion from 0x0208 to 0x0300. This controls the version number of the SMBIOS entry point table (and other things) that "MdeModulePkg/Universal/SmbiosDxe" installs. Alas, this change breaks older Linux guests, like RHEL-6 (up to RHEL-6.7); those are limited to 2.x (both in the guest kernel firmware driver, and in the dmidecode utility). The SMBIOS 3.0 entry point has a different GUID -- defined in UEFI 2.5 -- pointing to it in the UEFI Configuration Table, and guest kernels that lack upstream kernel commit e1ccbbc9d5 don't recognize it. The v2.1.0+ machine types of QEMU generate SMBIOS payload for the firmware to install. The payload includes the entry point table ("anchor" table). OvmfPkg/SmbiosPlatformDxe cannot install the anchor table (because that is the jurisdiction of the generic "MdeModulePkg/Universal/SmbiosDxe" driver); however, we can parse the entry point version from QEMU's anchor table, and instruct "MdeModulePkg/Universal/SmbiosDxe" to adhere to that version. On machine types older than v2.1.0, the feature is not available, but then, should anything in OVMF install SMBIOS tables, version 2.8 is simply safer / more widely supported than 3.0 -- hence the default 2.8 value for the dynamic PCD. We set the PCD in PlatformPei (when not on the S3 resume path), because that's an easy and certain way to set the PCD before a DXE driver reads it. This follows the example of PcdEmuVariableNvStoreReserved (which is read by EmuVariableFvbRuntimeDxe). RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1232876 Cc: Gabriel Somlo <somlo@cmu.edu> Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Acked-by: Gabriel Somlo <somlo@cmu.edu> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17676 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
86a9c7a74d3803ff4111c9af54358bfb895fd54b |
|
06-May-2015 |
Ruiyu Ni <ruiyu.ni@intel.com> |
OvmfPkg: Use the new PCDs defined in MdePkg and MdeModulePkg. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17318 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
47e57f4f5f640670eb7dbc0ab6dbbc974302d15d |
|
16-Mar-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: include XHCI driver QEMU commit aa685789 ("xhci: generate a Transfer Event for each Transfer TRB with the IOC bit set") fixed an emulation problem in QEMU; we can now drive that host controller with edk2's XhciDxe. Include it in OvmfPkg, as XHCI emulation is reportedly more virtualization-friendly than EHCI, consuming less CPU. The driver can be tested with the following QEMU command line options: -device nec-usb-xhci -device usb-kbd This patch should not regress existing QEMU command lines (ie. trigger an ASSERT() in XhciDxe that fails on pre-aa685789 QEMU) because QEMU's "-device nec-usb-xhci" has never before resulted in USB devices that worked with edk2 firmware builds, hence users have never had a reason to add that option. Now that they learn about XHCI support in OVMF by reading this commit message, they (or their packagers) will also know to update qemu to aa685789 or later (in practice that means the upcoming 2.3 release), at least if they want to use '-device nec-usb-xhci' with edk2, for the first time ever. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Alexander Graf <agraf@suse.de> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17055 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
df040c00ae19ff8174a6b6dac7ae57a364de75fc |
|
03-Mar-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg, ArmVirtualizationPkg: clean up XenHypercallLib names Perform the following renames in order to stick with edk2 tradition more closely: XenHypercallLibArm, XenHypercallLibIntel -> XenHypercallLib XenHypercallIntel -> X86XenHypercall In addition, we unify the INF files. This patch modifies ArmVirtualizationPkg and OvmfPkg at once, in order to keep both bisectable (client code shouldn't break). Suggested-by: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16998 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
d9fdfd851afc3e98d8c967fd2c0a40a43bac3f0c |
|
28-Feb-2015 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
Ovmf/Xen: move XenBusDxe to abstract XENIO_PROTOCOL While Xen on Intel uses a virtual PCI device to communicate the base address of the grant table, the ARM implementation uses a DT node, which is fundamentally incompatible with the way XenBusDxe is implemented, i.e., as a UEFI Driver Model implementation for a PCI device. Contributed-under: TianoCore Contribution Agreement 1.0 Acked-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Anthony PERARD <anthony.perard@citrix.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16973 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
cd8ff8fdda24c83be6ac247f8c21e5e4032fe586 |
|
28-Feb-2015 |
Ard Biesheuvel <ard.biesheuvel@linaro.org> |
Ovmf/Xen: move XenBusDxe hypercall code to separate library This moves all of the Xen hypercall code that was private to XenBusDxe to a new library class XenHypercallLib. This will allow us to reimplement it for ARM, and to export the Xen hypercall functionality to other parts of the code, such as a Xen console SerialPortLib driver. Contributed-under: TianoCore Contribution Agreement 1.0 Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Anthony PERARD <anthony.perard@citrix.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16970 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
ae591c14b333757a33768e80481bc301b8855686 |
|
13-Jan-2015 |
Daryl McDaniel <daryl.mcdaniel@intel.com> |
MdeModulePkg, MdePkg, NetworkPkg, OvmfPkg, PerformancePkg, ShellPkg: Library Migration. Move libraries from ShellPkg into MdeModulePkg and MdePkg. The following libraries are being migrated out of ShellPkg in order to make their functionality more widely available. • PathLib: Incorporate into MdePkg/Library/BaseLib • FileHandleLib: MdePkg/Library/UefiFileHandleLib • BaseSortLib: MdeModulePkg/Library/BaseSortLib • UefiSortLib: MdeModulePkg/Library/UefiSortLib Diffs showing file changes are in the attached file, LibMigration.patch. A description of the changes follows: • Move ShellPkg/Include/Library/FileHandleLib.h to MdePkg/Include/Library/FileHandleLib.h • Move ShellPkg/Include/Library/SortLib.h to MdeModulePkg/Include/Library/SortLib.h • Move ShellPkg/Library/BaseSortLib to MdeModulePkg/Library/BaseSortLib • Move ShellPkg/Library/UefiSortLib to MdeModulePkg/Library/UefiSortLib • Move ShellPkg/Library/BasePathLib/BasePathLib.c to MdePkg/Library/BaseLib/FilePaths.c • Merge ShellPkg/Include/Library/PathLib.h into MdePkg/Include/Library/BaseLib.h • Delete ShellPkg/Library/BasePathLib; Includes BasePathLib.c and BasePathLib.inf • NetworkPkg/NetworkPkg.dsc • PerformancePkg.dsc • OvmfPkg/OvmfPkgX64.dsc • OvmfPkg/OvmfPkgIa32X64.dsc • OvmfPkg/OvmfPkgIa32.dsc o Update SortLib and FileHandleLib library classes to point to the new library locations. o Remove PathLib library class and make sure that BaseLib is described. • MdeModulePkg/MdeModulePkg.dec o Add SortLib library class • MdePkg/MdePkg.dec o Add FileHandleLib library class o Add PcdUefiFileHandleLibPrintBufferSize PCD • MdePkg/Library/BaseLib/BaseLib.inf o Add FilePaths.c to [Sources] • MdePkg/Include/Library/BaseLib.h o Update file description to include "file path functions" • ShellPkg/ShellPkg.dsc o Change PACKAGE_GUID to { C1014BB7-4092-43D4-984F-0738EB424DBF } o Update PACKAGE_VERSION to 1.0 o Update SortLib and FileHandleLib library classes to point to the new library locations. o Remove PathLib library class and make sure that BaseLib is described. o Remove ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf from [Components] • ShellPkg/ShellPkg.dec o Update PLATFORM_VERSION to 1.0 o Remove declarations of the FileHandleLib, SortLib, and PathLib Library Classes o Update comment for the PcdShellPrintBufferSize PCD. • ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf • ShellPkg/Application/Shell/Shell.inf o Remove PathLib from [LibraryClasses] • ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.h • ShellPkg/Application/Shell/Shell.h o Remove #include <Library/PathLib.h> • ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf o Add PathLib to [LibraryClasses] • ShellPkg/Library/UefiShellLevel1CommandsLib/If.c o Remove #include <Library/PathLib.h> • ShellPkg/Application/ShellSortTestApp/ShellSortTestApp.inf o Add MdeModulePkg/MdeModulePkg.dec to [Packages] • MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf • MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf o Replace ShellPkg.dec with MdeModulePkg.dec in [Packages] • MdeModulePkg/Library/UefiSortLib/UefiSortLib.c o Remove #include <ShellBase.h> o Define USL_FREE_NON_NULL() to replace SHELL_FREE_NON_NULL() Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Daryl McDaniel <daryl.mcdaniel@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16601 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
cca7475bcbb8bfc7c732e106692a6d15e1dae51c |
|
02-Jan-2015 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: extract QemuBootOrderLib and rebase OvmfPkg's PlatformBdsLib on the standalone library. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Acked-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16570 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
36c6413f76e5f16f866dc77e213abbcc6e13e7f2 |
|
19-Dec-2014 |
Gary Lin <glin@suse.com> |
OvmfPkg: enable the IPv6 support There are several network stack drivers in MdeModulePkg or NetworkPkg. Currently, we only use the drivers from MdeModulePkg which only provides the IPv4 support. This commit adds the IPv6 drivers in NetworkPkg into OVMF. Here is the table of drivers from Laszlo. currently included related driver add or replace from MdeModulePkg in NetworkPkg from NetworkPkg ------------------ -------------- --------------- SnpDxe n/a n/a DpcDxe n/a n/a MnpDxe n/a n/a VlanConfigDxe n/a n/a ArpDxe n/a n/a Dhcp4Dxe Dhcp6Dxe add Ip4ConfigDxe Ip6Dxe add Ip4Dxe Ip6Dxe add Mtftp4Dxe Mtftp6Dxe add Tcp4Dxe TcpDxe replace Udp4Dxe Udp6Dxe add UefiPxeBcDxe UefiPxeBcDxe replace IScsiDxe IScsiDxe replace Since the TcpDxe, UefiPxeBcDxe, and IScsiDxe drivers in NetworkPkg also support IPv4, we replace the ones in MdeModulePkg. To enable the IPv6 support, build OVMF with "-D NETWORK_IP6_ENABLE". A special case is NetworkPkg/IScsiDxe. It requires openssl. For convenience, NetworkPkg/IScsiDxe is enabled only if both IPv6 and SecureBoot are enabled. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gary Lin <glin@suse.com> [lersek@redhat.com: typo fix in commit message; specil -> special] Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16543 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
988e59868bcaa2c3efbb31bb1d1891ce11c82a10 |
|
14-Nov-2014 |
Gabriel Somlo <somlo@cmu.edu> |
OvmfPkg: AcpiTimerLib: Switch additional stages to PCD-based Dxe instance Link DXE_SMM_DRIVER, UEFI_DRIVER, UEFI_APPLICATION, and SMM_CORE against a valid, non-asserting version of PcdLib, then switch them over to using the "Dxe" instance of AcpiTimerLib (instead of the "Base" version). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16378 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
f122712b42af3d63902c2c141e90d2c200df6790 |
|
14-Nov-2014 |
Gabriel Somlo <somlo@cmu.edu> |
OvmfPkg: AcpiTimerLib: Use global variable during PEI_CORE and PEIM Since in OVMF both PEI_CORE and PEIM run from RAM, and thus may utilize global variables, use the "Base" AcpiTimerLib instance (instead of BaseRom) to take advantage of the improved efficiency of storing the timer register IO address in a global variable. This leaves only SEC using the BaseRomAcpiTimerLib instance. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16377 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
170ef2d91612350fd1d1bac9d77b3ce0bffda714 |
|
14-Nov-2014 |
Gabriel Somlo <somlo@cmu.edu> |
OvmfPkg: AcpiTimerLib: Split into multiple phase-specific instances Remove local power management register access macros in favor of factored-out ones in OvmfPkg/Include/OvmfPlatforms.h Next, AcpiTimerLib is split out into three instances, for use during various stages: - BaseRom: used during SEC, PEI_CORE, and PEIM; - Dxe: used during DXE_DRIVER and DXE_RUNTIME_DRIVER; - Base: used by default during all other stages. Most of the code remains in AcpiTimerLib.c, to be shared by all instances. The two platform-dependent methods (constructor and InternalAcpiGetTimerTick) are provided separately by source files specific to each instance, namely [BaseRom|Base|Dxe]AcpiTimerLib.c. Since pre-DXE stages can't rely on storing data in global variables, methods specific to the "BaseRom" instance will call platform detection macros each time they're invoked. The "Base" instance calls platform detection macros only from its constructor, and caches the address required by InternalAcpiTimerTick in a global variable. The "Dxe" instance is very similar to "Base", except no platform detection macros are called at all; instead, the platform type is read via a dynamic PCD set from PlatformPei. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Gerd Hoffmann <kraxel@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16376 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
d55004dac9c762fa01c5656f7a2e6132ed7bfe38 |
|
14-Nov-2014 |
Gabriel Somlo <somlo@cmu.edu> |
OvmfPkg: Add PCD for Host Bridge dev. ID (PcdOvmfHostBridgePciDevId) Set from PEI, this PCD allows subsequent stages (specifically DXE_DRIVER and DXE_RUNTIME_DRIVER) to infer the underlying platform type (e.g. PIIX4 or Q35/MCH) without the need to further query the Host Bridge for its Device ID. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16374 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
848834cbd167c828e43e4dd0f316b6f00d2f6834 |
|
06-Nov-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: set video resolution of text setup to 640x480 On a physical screen such a low graphics resolution would lead to huge glyphs (the text resolution is 80x25, centered, with 8x19 pixel glyphs). But in a virtual machine it just saves screen real estate on the client, by removing the black bands. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16311 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
b1220e28202221fa987492f65f538f7acb8b7e7f |
|
06-Nov-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: BDS: drop custom boot timeout, revert to IntelFrameworkModulePkg's PlatformBdsEnterFrontPage() already implements a keypress wait (for entering the setup utility at boot) with a nice progress bar, only OVMF has not been using it. Removing our custom code and utilizing PlatformBdsEnterFrontPage()'s builtin wait has the following benefits: - It simplifies OVMF's BDS code. - Because now we call PlatformBdsEnterFrontPage() unconditionally, it actually has a chance to look at the EFI_OS_INDICATIONS_BOOT_TO_FW_UI bit of the "OsIndications" variable, improving compliance with the UEFI specification. References: - https://bugzilla.redhat.com/show_bug.cgi?id=1153927 - http://thread.gmane.org/gmane.comp.bios.tianocore.devel/10487 - The progress bar looks nice. (And it keeps the earlier behavior intact, when the user presses a key on the TianoCore splash screen.) In any case, we set the timeout to 0 (which doesn't show the progress bar and proceeds to the boot options immediately) in order to keep the boot time down. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16310 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
de671da8e43c424ebdcf816c45fd06c43ff44aba |
|
29-Oct-2014 |
Anthony PERARD <anthony.perard@citrix.com> |
OvmfPkg/XenPvBlkDxe: Xen PV Block device, initial skeleton A ParaVirtualize block driver. Change in V4: - Replace the license by the commonly used file header text. - Add brief description for the driver. Change in V3: - enable compilation for Ia32 and Ia32X64 - fix version (driver binding) Change in V2: - Add minimal support for controller name - Remove stuff about BlockIo2 - Little cleanup - Licenses and file headers - Rename XenbusIo into XenBusIo Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16272 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
e65e8802e56eee33c3c2c77c1b60d5ba6746eb3b |
|
29-Oct-2014 |
Anthony PERARD <anthony.perard@citrix.com> |
OvmfPkg: Add basic skeleton for the XenBus bus driver. This includes Component Name and Driver Binding. Change in V4: - Replace the license by the commonly used file header text. - Add brief description for the driver. Change in V3: - enable compilation for Ia32 and Ia32X64 - fix version (driver binding) Change in V2: - Simple support of controller name. - Cleaning up comments, files header. - Add Licenses - Rename XenbusDxe to XenBusDxe. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16258 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
8714a6314f7b95ec389533552aa2034238f0b602 |
|
02-Oct-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: disable stale fork of SecureBootConfigDxe OvmfPkg forked SecureBootConfigDxe from SecurityPkg in SVN r13635 (git commit 8c71ec8f). Since then, the original (in "SecurityPkg/VariableAuthenticated/SecureBootConfigDxe") has diverged significantly. The initial diff between the original and the fork, when the fork was made (ie. at SVN r13635), reads as follows: > diff -ur SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfig.vfr OvmfPkg/SecureBootConfigDxe/SecureBootConfig.vfr > --- SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfig.vfr 2014-09-30 23:35:28.598067147 +0200 > +++ OvmfPkg/SecureBootConfigDxe/SecureBootConfig.vfr 2014-08-09 02:40:35.824851626 +0200 > @@ -51,7 +51,7 @@ > questionid = KEY_SECURE_BOOT_ENABLE, > prompt = STRING_TOKEN(STR_SECURE_BOOT_PROMPT), > help = STRING_TOKEN(STR_SECURE_BOOT_HELP), > - flags = INTERACTIVE | RESET_REQUIRED, > + flags = INTERACTIVE, > endcheckbox; > endif; > > @@ -158,7 +158,7 @@ > questionid = KEY_SECURE_BOOT_DELETE_PK, > prompt = STRING_TOKEN(STR_DELETE_PK), > help = STRING_TOKEN(STR_DELETE_PK_HELP), > - flags = INTERACTIVE | RESET_REQUIRED, > + flags = INTERACTIVE, > endcheckbox; > endif; > endform; > diff -ur SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf OvmfPkg/SecureBootConfigDxe/SecureBootConfigDxe.inf > --- SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf 2014-09-30 23:35:28.598067147 +0200 > +++ OvmfPkg/SecureBootConfigDxe/SecureBootConfigDxe.inf 2014-09-30 23:35:28.577067027 +0200 > @@ -1,5 +1,8 @@ > ## @file > -# Component name for SecureBoot configuration module. > +# Component name for SecureBoot configuration module for OVMF. > +# > +# Need custom SecureBootConfigDxe for OVMF that does not force > +# resets after PK changes since OVMF doesn't have persistent variables > # > # Copyright (c) 2011 - 2012, Intel Corporation. All rights reserved.<BR> > # This program and the accompanying materials > diff -ur SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigImpl.c OvmfPkg/SecureBootConfigDxe/SecureBootConfigImpl.c > --- SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigImpl.c 2014-09-30 23:35:28.599067153 +0200 > +++ OvmfPkg/SecureBootConfigDxe/SecureBootConfigImpl.c 2014-09-30 23:35:28.578067033 +0200 > @@ -2559,7 +2559,7 @@ > NULL > ); > } else { > - *ActionRequest = EFI_BROWSER_ACTION_REQUEST_RESET; > + *ActionRequest = EFI_BROWSER_ACTION_REQUEST_SUBMIT; > } > break; The commit message is not overly verbose: OvmfPkg: Add custom SecureBootConfigDxe that doesn't reset We don't force a platform reset for OVMF when PK is changed in custom mode setup. But the INF file hunk is telling: Need custom SecureBootConfigDxe for OVMF that does not force resets after PK changes since OVMF doesn't have persistent variables We do have persistent variables now. Let's disable the (now obsolete) OvmfPkg fork, and revert to the (well maintained) SecurityPkg-provided config driver. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Tested-by: Gary Lin <glin@suse.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16191 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
48cc4d0c61e08ebaeadb29f5c24dd3f48a76da20 |
|
22-Sep-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: resolve OrderedCollectionLib with base red-black tree instance The "complete" QEMU fw_cfg ACPI loader will need to look up downloaded blobs by name, in order to implement the AddPointer and AddChecksum commands. Introduce OrderedCollectionLib to support such indexing. BaseOrderedCollectionRedBlackTreeLib is a BASE module, hence add the OrderedCollectionLib resolution to the main [LibraryClasses] section. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16155 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
9fc9f4d8b4c828e9164c48279422f69a214a3bcf |
|
11-Sep-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: resolve BcfgCommandLib class for ShellPkg/.../Shell.inf SVN r16092 ('ShellPkg: Add a new library for "bcfg" command') introduced a new library class (and an instance for it) called BcfgCommandLib. SVN r16093 ('ShellPkg: Use the new library for "bcfg" command') rebased ShellPkg to the new library, introducing a new [LibraryClasses] dependency. Library classes must be resolved to library instances in client platform descriptions (DSC's). Since OVMF is a client platform, import the same library resolution as seen in "ShellPkg/ShellPkg.dsc" (added in SVN r16092). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16095 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
497cbb530a582e3d93ae4819a8ae25cffc7e7c1d |
|
19-Aug-2014 |
Jordan Justen <jordan.l.justen@intel.com> |
OvmfPkg: Build OVMF ResetVector during EDK II build process Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15824 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
e04cca1d05e2329a5beee18a302467ba7ae482ed |
|
31-Mar-2014 |
Paolo Bonzini <pbonzini@redhat.com> |
OvmfPkg: non-null PcdLib instance for the CSM VideoDxe VideoDxe is a UEFI_DRIVER, so it has by default a null instance of PcdLib. It accesses two PCDs that are now dynamic (gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution and gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution). Similar to r15362 (OvmfPkg: non-null PcdLib instance for GraphicsConsoleDxe, 2014-03-22), we need to specify a non-null instance of PcdLib. This patch unbreaks the CSM VideoDxe module for OvmfPkg. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15421 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
d945a8ba5bc082dfb037fc710dc616d35eb36de4 |
|
22-Mar-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: introduce empty PlatformDxe This DXE driver will load/save persistent values for OVMF's config knobs, plus expose those knobs via HII. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15364 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c4341e3a0e410f7c31a55edc4e7ea646c05f8c26 |
|
22-Mar-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: non-null PcdLib instance for GraphicsConsoleDxe GraphicsConsoleDxe (a UEFI_DRIVER under MdeModulePkg/Universal/Console) determines the preferred video resolution from the dynamic PCDs - gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution - gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution In one of the next patches, we'd like to change these PCDs. In order for GraphicsConsoleDxe to retrieve the new values dynamically, - it must be linked with the non-null instance of PcdLib, - OvmfPkg must provide dynamic defaults. We keep MdeModulePkg's 800x600 default resolution. (The UEFI specification requires video drivers to support 800x600.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15362 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
34511266c2607b1d9ee99cff81649537d859a6ac |
|
04-Mar-2014 |
Jordan Justen <jordan.l.justen@intel.com> |
OvmfPkg: Add DebugAgentLib for Library class mapping for DXE_DRIVER This is needed for BootScriptExecutorDxe. 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@15308 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
939004009de251bfecec2a7c5c16d12f4a5adffe |
|
04-Mar-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: S3 Resume: pull in BootScriptExecutorDxe This driver (from "MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf") is first loaded normally during DXE. When the EFI_DXE_SMM_READY_TO_LOCK_PROTOCOL is installed by any DXE driver (purely as a form of notification), the driver reloads itself to reserved memory. During S3 Resume / PEI, the driver image is executed from there. In order to access the boot script saved during S3 Suspend, LockBox access is needed. The boot script is transferred internal to PiDxeS3BootScriptLib: Both S3SaveStateDxe and BootScriptExecutorDxe are statically linked against PiDxeS3BootScriptLib. Whichever is loaded first (during normal boot, in the DXE phase), allocates the root storage for the script. The address is then passed between the PiDxeS3BootScriptLib instances living in the two separate drivers thru the dynamic PcdS3BootScriptTablePrivateDataPtr PCD. Dependencies: BootScriptExecutorDxe gEfiLockBoxProtocolGuid [OvmfPkg/AcpiS3SaveDxe] S3BootScriptLib [PiDxeS3BootScriptLib] SmbusLib [BaseSmbusLibNull] LockBoxLib [OvmfPkg/Library/LockBoxLib] LockBoxLib [OvmfPkg/Library/LockBoxLib] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15307 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
b017b1b27a18af9519a0a18ed731d8d7c8cefa43 |
|
04-Mar-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: S3 Suspend: enable creation/saving of an S3 Boot Script "MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf" produces the EFI_S3_SAVE_STATE_PROTOCOL which allows creation and saving of an S3 Boot Script, to be replayed in PEI during S3 Resume. The script contains opcodes and opcode arguments to configure CPU, PCI and IO resources. S3SaveStateDxe relies on the S3BootScriptLib library. The Null implementation is not useful for actually saving the boot script, we need the PiDxeS3BootScriptLib instance. The PiDxeS3BootScriptLib library instance depends on LockBoxLib, implemented for OVMF in one of the previous patches. PiDxeS3BootScriptLib also depends on SmbusLib. For now we opt for the Null instance of the latter. It means that SMBus commands in the boot script will have no effect when interpreted during S3 Resume. This should be fine for OvmfPkg and QEMU. EFI_S3_SAVE_STATE_PROTOCOL [S3SaveStateDxe] S3BootScriptLib [PiDxeS3BootScriptLib] SmbusLib [BaseSmbusLibNull] LockBoxLib [OvmfPkg/Library/LockBoxLib] When the EFI_DXE_SMM_READY_TO_LOCK_PROTOCOL is installed by any DXE driver (purely as a form of notification), the S3SaveStateDxe driver saves the boot script to EfiACPIMemoryNVS, and links it into the LockBox. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15304 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
389cbceb7fc0039ff68abf3df31886e6f85b8092 |
|
04-Mar-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: S3 Suspend: save ACPI context "OvmfPkg/AcpiS3SaveDxe/AcpiS3SaveDxe.inf" (originally: "IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf") produces the EFI_ACPI_S3_SAVE_PROTOCOL. When found, this protocol is automatically invoked by BdsLibBootViaBootOption(), in file "IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c", right before booting a boot option, to save ACPI S3 context. At that point during BDS, our AcpiPlatformDxe driver will have installed the FACS table (which AcpiS3SaveDxe has a use-time dependency upon). With regard to dependencies: AcpiS3SaveDxe implements EFI_ACPI_S3_SAVE_PROTOCOL by relying on LockBoxLib. BdsLibBootViaBootOption() EFI_ACPI_S3_SAVE_PROTOCOL [AcpiS3SaveDxe] LockBoxLib [OvmfPkg/Library/LockBoxLib] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> [jordan.l.justen@intel.com: Remove EmuNvramLib] 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@15303 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
6a7cba79b7b6d58f79a01bf29c900cb3ca6b5187 |
|
04-Mar-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: implement LockBoxLib The S3 suspend/resume infrastructure depends on the LockBox library class. The edk2 tree currently contains Null and SMM instances. The Null instance is useless, and the SMM instance would require SMM emulation by including the SMM core and adding several new drivers, which is deemed too complex. Hence add a simple LockBoxLib instance for OVMF. jordan.l.justen@intel.com: * use PCDs instead of EmuNvramLib - clear memory in PlatformPei on non S3 boots * allocate NVS memory and store a pointer to that memory - reduces memory use at fixed locations Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> 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@15301 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
5fb6fc0f0538af2927905090c26a72d4de4112a4 |
|
04-Mar-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: S3 Resume: pull in PEIM orchestrating S3 Resume "UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf" produces the EFI_PEI_S3_RESUME2 PEIM-to-PEIM Interface. When the platform-specific initialization code (in PEI) sets the Boot Mode to BOOT_ON_S3_RESUME, the DXE IPL (which is the last step in PEI) skips the DXE phase entirely, and executes the S3 Resume PEIM through the EFI_PEI_S3_RESUME2 interface instead. (See DxeLoadCore() in "MdeModulePkg/Core/DxeIplPeim/DxeLoad.c".) S3Resume2Pei depends on LockBoxLib. EFI_PEI_S3_RESUME2 [S3Resume2Pei] LockBoxLib [OvmfPkg/Library/LockBoxLib] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15300 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
2d441ca9cd79aae0d26ee7f464ddbee2a28d2121 |
|
20-Jan-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: unify PcdMaxVariableSize at 0x2000 bytes The Linux persistent store (pstore) feature serves, among other things, for saving the trailing portion of the dmesg in case of a kernel oops. One backend for the pstore facility is "efivars", ie. non-volatile UEFI variables. Linux splits the tail of the dmesg that is to be dumped in 1KB chunks, and tries to save each chunk as a specially (and differently) named non-volatile variable. The 1KB chunk size accounts for the variable data only; Linux expects this size to be available per variable *without* accounting for the variable name or any firmware-internal overhead. For non-authenticated (ie. non-secure-boot) variables, OvmfPkg currently sets the per-variable limit to 0x400 (1KB) through PcdMaxVariableSize. However this PCD determines the size *before* subtracting the internal overhead (which is sizeof(VARIABLE_HEADER) == 0x20 bytes for non-authenticated variables, see "MdeModulePkg/Include/Guid/VariableFormat.h"), and also before subtracting the given variable's UCS-2 encoded name (including the trailing 0x0000). Linux maximizes these special variable names in DUMP_NAME_LEN==52 code points (including the trailing NUL). Hence we must provide at least 0x020 == sizeof(VARIABLE_HEADER), for the internal overhead 0x068 == 2 * 52, for the UCS-2 encoded name, including trailing 0x0000 0x400 for the variable body ----- 0x488 == 1160 bytes in PcdMaxVariableSize, so that Linux's efivars-backed pstore can work even on non-secure-boot builds of OVMF. However, as PcdMaxVariableSize=0x2000 has proven reasonable when secure boot is enabled, it should also be okay when secure boot is disabled; so for simplicity's sake set PcdMaxVariableSize to 0x2000 unconditionally. Tested-by: Seiji Aguchi <seiji.aguchi@hds.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15142 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c90decb997484a34652a8ca2a90b358f929d41f2 |
|
03-Jan-2014 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: QemuFwCfgLib: implement for SEC The QemuFwCfgSecLib library instance - is stateless, - has no library constructor, - is available to SEC client code, - must be queried with QemuFwCfgIsAvailable() before use, - is restricted to SEC in order to limit the explicit querying requirement. (There is no current user.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15046 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
56f65ed838e8d73e91d54a8ed984d777c936843c |
|
11-Dec-2013 |
Olivier Martin <olivier.martin@arm.com> |
OvmfPkg: Make the VirtIo devices use the new VIRTIO_DEVICE_PROTOCOL This change replaces the accesses to the PCI bus from the Block, Scsi and Net drivers by the use of the new VIRTIO_DEVICE_PROTOCOL protocol that abstracts the transport layer. It means these drivers can be used on PCI and MMIO transport layer. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> v5: - VirtioFlush(): update comment block in VirtioLib.[hc]; error code is propagated from VirtIo->SetQueueNotify(). - VirtioBlkInit(): jump to Failed label if SetPageSize() fails - VirtioBlkInit(): fixup comment, and add error handling, near SetQueueNum() call - VirtioBlkDriverBindingStart(): remove redundant (always false) check for a subsystem device ID different from VIRTIO_SUBSYSTEM_BLOCK_DEVICE; VirtioBlkDriverBindingSupported() handles it already - VirtioNetGetFeatures(): update stale comment block - VirtioNetGetFeatures(): retrieve MAC address byte for byte (open-coded loop) - VirtioNetDriverBindingStart(): remove redundant (always false) check for a subsystem device ID different from VIRTIO_SUBSYSTEM_NETWORK_CARD; VirtioNetDriverBindingSupported() handles it already - VirtioNetInitRing(): call SetQueueNum() and SetQueueAlign() for proper MMIO operation - VirtioNetInitialize(): fix destination error label for when SetPageSize() fails - VirtioScsi.c: fix comment block of VIRTIO_CFG_WRITE()/VIRTIO_CFG_READ() - VirtioScsiInit(): fix destination error label for when SetPageSize() fails - VirtioScsiInit(): call SetQueueNum() and SetQueueAlign() for proper MMIO operation Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14966 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
447d264115c476142f884af0be287622cd244423 |
|
08-Dec-2013 |
Wei Liu <wei.liu2@citrix.com> |
OvmfPkg: enable Xen specific path This patch sets PcdPciDisableBusEnumeration to true then makes use of PublishPeiMemory and XenMemMapInitialization to construct memory map for Xen guest. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Wei Liu <wei.liu2@citrix.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14946 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
85a32c714c4c881431b2830ac5dc57e894dc1c61 |
|
22-Nov-2013 |
Jeff Fan <jeff.fan@intel.com> |
Updated OvmfPkg to use suitable CPU Exception Handler Library instances. Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14887 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
182eb4562731fbca15e9d21f2544e3914598c0ec |
|
12-Nov-2013 |
Jordan Justen <jordan.l.justen@intel.com> |
OvmfPkg: Add QemuFlashFvbServicesRuntimeDxe to firmware image This driver will support a flash FVB implementation if QEMU flash is detected. The driver is added to the apriori list to make sure it runs before the EmuVariableFvbRuntimeDxe driver. If this driver detects flash support, then it will disable the EmuVariableFvbRuntimeDxe driver by setting PcdFlashNvStorageVariableBase64. 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@14840 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
9a08997862989794460d53402c577ee74c60a278 |
|
12-Nov-2013 |
Jordan Justen <jordan.l.justen@intel.com> |
OvmfPkg: Add NV Variable storage within FD This is to prepare for QEMU flash support which will allow non-volatile variables to be saved in the flash image. Note two size changes: * NV Varstore size increased from 0xc000 to 0xe000 * FTW work size decreased from 0x2000 to 0x1000 The reason for this change is that the fault-tolerant write support requires that the work area fit within the block just before the fault-tolerant write spare storage blocks. Since QEMU flash blocks have a size of 0x1000, this means that the maximum FTW work size is 0x1000. v2: * Update commit message and PcdVariableStoreSize 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@14835 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
0d28d286bf4dc3a9a294ea3f49fbf17e5181ffb4 |
|
21-Sep-2013 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: resolve TpmMeasurementLib dependency introduced in r14687 (1) OVMF depends on MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf unconditionally. (2) When OVMF is built with -D SECURE_BOOT_ENABLE, then SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf is injected into SecurityStubDxe above. (3) SVN r14687 ("Add TPM2 implementation.") has made DxeImageVerificationLib dependent on TpmMeasurementLib. Currently the last link of the OVMF -> SecurityStubDxe -> DxeImageVerificationLib -> TpmMeasurementLib dependency chain is unresolved: build.py... /.../OvmfPkg/OvmfPkgX64.dsc(...): error 4000: Instance of library class [TpmMeasurementLib] is not found in [/.../SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf] [X64] consumed by module [/.../MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf] Let's provide a library instance for TpmMeasurementLib the same way as "SecurityPkg/SecurityPkg.dsc" does (SVN r13964.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14690 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
db44ea6c4e093c1a53d752bb21b9eba8ad8fdaa9 |
|
28-Aug-2013 |
Fu Siyuan <siyuan.fu@intel.com> |
1. Change default PCD in SecurityPkg to 4 (DENY_EXECUTE) in DEC file. 2. ASSERT if PCD value is set to 5 (QUERY_USER_ON_SECURITY_VIOLATION). 3. Update override PCD setting from 5 to 4 in platform DSC file. Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14607 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
9bef3cdc8a9d9f9344bd9cb94af3bbdc4ec5ed4d |
|
23-Aug-2013 |
Jordan Justen <jordan.l.justen@intel.com> |
OvmfPkg: Build and use the UEFI shell by default Previously OVMF included the older EFI shell binary when building. Now we will build and use the UEFI shell (ShellPkg) instead. v2: * Don't bother building UEFI shell when USE_OLD_SHELL is defined * Fix errors in OvmfPkgIa32X64.fdf 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@14600 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
5c3481b0b611ed97be69876ec19804474a1d69aa |
|
19-Aug-2013 |
Ruiyu Ni <Ruiyu.ni@Intel.com> |
OvmfPkg: Use the new DevicePathLib for all platforms Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <Ruiyu.ni@Intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14558 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
56af21cb4e21010ec99bba8fb0d62d46b7114e77 |
|
12-Aug-2013 |
Eric Dong <eric.dong@intel.com> |
Update OVMF platform to use new display engine and browser. Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14541 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
253616154506e17ebd02c076f240748f57e36ac2 |
|
12-Aug-2013 |
Eric Dong <eric.dong@intel.com> |
Rollback patch 14537 & 14538, because patch 14537 is not tested by Laszlo Ersek, but i wrote it. Signed-off-by: Eric Dong <eric.dong@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14539 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
b9feb4bdf281bcd9c61d9b089c379f265664674b |
|
09-Aug-2013 |
Eric Dong <eric.dong@intel.com> |
Update Browser to provide the customization possibilities. Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> MdeModulePkg Patch Tested-by: Laszlo Ersek <lersek@redhat.com> OvmfPkg Patch Tested-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14537 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
fd4ba547a13a4e3ddfb820de59887875bf86c5de |
|
14-Jun-2013 |
Jordan Justen <jordan.l.justen@intel.com> |
OvmfPkg: Reduce PcdMaxVariableSize with secure boot to avoid assert r14252 causes OVMF to crash if SECURE_BOOT_ENABLE is set, because PcdMaxVariableSize is set to a larger value than required. In other platforms, 0x2000 seems to be sufficient. Reported-by: Gary Ching-Pang Lin <glin@suse.com> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14423 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7a1f59476d40348429575b26b5612b219ddb83e2 |
|
14-Jun-2013 |
Laszlo Ersek <lersek@redhat.com> |
OvmfPkg: enable building VirtioNetDxe Also summarize the resultant NIC driver options in the README file. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14421 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7628b0f5aaa2b46ffcd3df2e574e6bb487268b92 |
|
15-May-2013 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: enable the generic network stack by default DHCP, PXE, and StdLib socket apps are enabled in OVMF by the sum of: (a) a UEFI NIC driver, (b) the generic network stack. The only choice for (a) used to be the proprietary Intel E1000 driver, which is cumbersome to obtain and enable. The iPXE UEFI NIC drivers packaged with qemu-1.5 cover (a) for each NIC type supported by qemu, and are easy to obtain & configure, even for earlier qemu versions. Therefore enable (b) per default as well. This doesn't take up much space; the binaries (b) adds to the firmware don't seem to need -D FD_SIZE_2MB. Intel's e1000 driver remains an option, requested by the -D E1000_ENABLE build flag. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14366 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
3c0a051fa2bc443cee65d25fda74771f47cbb8eb |
|
02-Nov-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add LoadLinuxLib library implementation This code is based on efilinux's bzimage support. git://git.kernel.org/pub/scm/boot/efilinux/efilinux.git Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Matt Fleming <matt.fleming@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13922 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
37078a63b1911f8b320bab6d82a2183a84f8858c |
|
18-Oct-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: introduce virtio-scsi driver Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> [jordan.l.justen@intel.com: fix build for VS2012] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13867 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
263559b87232826552c9e42c1652d9f9488c9870 |
|
12-Oct-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: extract VirtioLib from VirtioBlkDxe Introduce a new library called VirtioLib, for now only collecting the following reusable functions with as little changes as possible: - VirtioWrite() - VirtioRead() - VirtioRingInit() - VirtioRingUninit() - AppendDesc() Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13842 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
fd51d7599173164be618d26e9d3673c09f60dbb2 |
|
08-Oct-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: introduce virtio-blk driver Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13798 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
bbcafc442b2db91322dd3ba04e166236a41b111d |
|
03-Oct-2012 |
mdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524> |
The exception table information in X64 PE/COFF images is being stripped by default in the OvmfPkg. This patch preserves this information when SOURCE_DEBUG_ENABLE is set. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Laszlo Ersek git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13780 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7ca126ff309053656ff4846c53430c9c58a79cd3 |
|
12-Sep-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: fix gPcAtChipsetPkgTokenSpaceGuid build break In OvmfPkgIa32X64.dsc: Paraphrasing svn rev 13350: gPcAtChipsetPkgTokenSpaceGuid is declared in PcAtChipsetPkg.dec and used via AcpiPlatformDxe.inf, but with the latest build tools, since this package builds multiple architectures (IA32 & X64) and AcpiPlatformDxe is used on X64 only, it is now necessary to place the gPcAtChipsetPkgTokenSpaceGuid PCD's in the [PcdsFixedAtBuild.X64] section. In the two other .dsc files: Make a similar change to keep file contents more easily comparable. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> [jordan.l.justen@intel.com: change all .dsc files to keep them diffable] Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13724 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
8c71ec8f11dd3e8f5163df48d1175c975aa19973 |
|
15-Aug-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add custom SecureBootConfigDxe that doesn't reset We don't force a platform reset for OVMF when PK is changed in custom mode setup. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Lee Rosenbaum <lee.g.rosenbaum@intel.com> Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13635 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
498f7d8ddd4f60c8c8226bb6e672be04ab4c18e0 |
|
13-Aug-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: generate full MADT dynamically, synchronize contents with qemu Represent the set of possible PCI link target IRQs with Pcd8259LegacyModeEdgeLevel. This ensures that the 8259 Interrupt Controller code in PcAtChipsetPkg will treat them as level-triggered too. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13628 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
53de44aadea62587682964e358ca0b2274e39079 |
|
31-Jul-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg/*.dsc: Move PCD locations to be similar to OvmfPkgIa32X64.dsc Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13571 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
cd45566925e002668c880c26ee99039023784b67 |
|
31-Jul-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Move DxeServicesTableLib to common LibraryClasses ConSplitterDxe (UEFI_DRIVER) now uses this library class. Move the library mapping to the common LibraryClasses section. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13570 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
0b5a5022e5b5377d07d06e6c330fd4305ac47f9d |
|
31-Jul-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Disable debugging for UNIXGCC to save space UNIXGCC builds larger images than GCC44, and can have issues fitting into the FD image. Therefore, when using UNIXGCC, debug will be disabled by default. The README file is updated with instructions for selectively enabling debug for UNIXGCC. 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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13569 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
b90aefa9e46c2c2628bfbf62e43b366678b9af07 |
|
26-Jul-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: add support for debug console on port 0x402 This patch adds support for a debug console on the same port that is used by SeaBIOS. This makes it easier to debug OVMF, because it does not mix debug and serial output on the same device. It also makes it easier to leave some of the debug messages on even in release builds. To enable it, pass "-debugcon stdio -global isa-debugcon.iobase=0x402" to QEMU. The new mechanism is enabled by default, but a regular serial console can be chosen by adding -D DEBUG_ON_SERIAL_PORT to the build options. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> [jordan.l.justen@intel.com: MAX_DEBUG_MESSAGE_LENGTH=>0x100, p=>Ptr] Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13562 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7d2bd1505b93135947045e24b6a1313799d44738 |
|
31-May-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add AcpiPlatformDxe This driver is currently a direct copy of MdeModulePkg/Universal/Acpi/AcpiPlatformDxe. 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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13384 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
f1ec65ba24e1c7ca07c971dd737932c756f5780d |
|
31-May-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add QemuFwCfgLib library class and implementation QEMU's Firmware Configuration interface gives the firmware access to various types of information. 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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13383 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
ae1ca0fb8a722031d5bbf0d2c3d7490e3778dd7c |
|
10-Apr-2012 |
lgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524> |
Remove unused PCDs in OVMF Platform. Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13176 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7a616e5b77655ece707b132b746c8df565edaf05 |
|
04-Apr-2012 |
leegrosenbaum <leegrosenbaum@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add custom mode setup if the Secure Boot build option is specified. If –D SECURE_BOOT_ENABLE is specified with the build command, Secure Boot support is enabled including custom mode setup. This allows Secure Boot to be configured through setup allowing OvmfPkgX64, OvmfPkgIa32 and OvmfPkg3264 to be a fully functional Secure Boot reference platforms. Remove redundant library class definitions for BaseCryptLib and OpenSslLib. Signed-off-by: Lee Rosenbaum <lee.g.rosenbaum@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13160 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
55b175331e45616e28ec2624d3e209a0069d4829 |
|
15-Mar-2012 |
vanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524> |
Updated platform DSC files to add CPU Exception Library instances. Signed-off-by: vanjeff Reviewed-by: jyao1 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13100 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
8cee3de7e9f44180b63effa6f62cb083fcba4f03 |
|
09-Mar-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Enable secure-boot support when SECURE_BOOT_ENABLE==TRUE Adjust PCD settings, library mappings and driver usage to enable secure-boot when -D SECURE_BOOT_ENABLE=TRUE is used on the build command line. Signed-off-by: lgrosenb Reviewed-by: jljusten Reviewed-by: mdkinney git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13093 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
e05061c59fea660fa64e63565cd970fcca33049c |
|
09-Mar-2012 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add PcdSecureBootEnable Signed-off-by: lgrosenb Reviewed-by: jljusten Reviewed-by: mdkinney git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13091 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
4b3d663f7b2f0db316f20c0ee86c7270c1338852 |
|
10-Nov-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add CSM16 and related drivers if CSM_ENABLE is set Note: The CSM16 binary must be copied into the tree at OvmfPkg/Csm/Csm16/Csm16.bin in order to use CSM_ENABLE. If CSM_ENABLE is set during the build, then the CSM16 binary and the CSM support (Legacy BIOS) drivers will be added to the build. Signed-off-by: jljusten Reviewed-by: geekboy15a git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12682 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
8016da21b56d5ab1da855037cd0f0e034e2404bf |
|
10-Nov-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add CsmSupportLib This library installs the legacy interrupt, region and platform support required for CSM support drivers. Signed-off-by: jljusten Reviewed-by: geekboy15a git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12681 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
d33db9275afdfb39466c808e7b6643393fb47584 |
|
02-Sep-2011 |
hhtian <hhtian@6f19259b-4bc3-4df7-8a09-765794883524> |
Correct package name Signed-off-by: hhtian git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12269 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
827adf25bc3aa23c3b40f91f6e82e0f473ac077d |
|
02-Sep-2011 |
li-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524> |
Add LockBox null library to make CapsuleRuntimeDxe driver build pass. Signed-off-by: li-elvin Reviewed-by: lgao4, mdkinney git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12266 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
670a64e7b79568db83b4dfca06eda9ac52e15423 |
|
25-Aug-2011 |
gikidy <gikidy@6f19259b-4bc3-4df7-8a09-765794883524> |
Fix build crash while using MSFT to build OVMF, also fix some build warning report for PCD type issues. Signed-off-by: gikidy Reviewed-by: jcarsey git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12202 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
fb511817629e3c26a29ab154319a8edcc9ce2bc1 |
|
14-Aug-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg/SmbiosPlatformDxe: Add OVMF SMBIOS driver (with Xen support) Locates Xen SMBIOS data and installs it using the SMBIOS protocol. Signed-off-by: gavinguan Reviewed-by: Andrei Warkentin <andreiw@motorola.com> Signed-off-by: jljusten git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12125 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
d12bed15b344fba00c1a4b511c5c2456109b8e99 |
|
11-Jul-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add PathLib class mapping when building the UEFI shell When building the UEFI shell into OVMF, the PathLib class mapping is required. Signed-off-by: jljusten git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12005 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
345a0c8fce389df4ec50a2c1ffc4f9e5387d461a |
|
26-Jun-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add support for UEFI shell When building: -D BUILD_NEW_SHELL - Build and include UEFI shell in firmware -D USE_NEW_SHELL - Include UEFI shell binary build in firmware The default is to use the older EFI shell. Signed-off-by: jljusten git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11890 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
eaf4f336ea42dc32e1a5b31d6b7822c125a15d34 |
|
12-Apr-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add QemuVideoDxe driver This driver provides a UEFI Graphics Output Protocol (GOP) driver for the QEMU Cirrus VGA hardware. It enables 24-bit color, and uses the standard 32-bit GOP pixel format whenever possible. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11524 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7052047f04e7c9ca49f65eb19346a8328a3bfead |
|
01-Apr-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg/*.dsc: Change FileHandleLib instance path This library instance was renamed from BaseFileHandleLib to UefiFileHandleLib in r11421. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11492 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
5de1a578e8f477ef65f0438bd69684784f6c4bf2 |
|
10-Mar-2011 |
mdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524> |
Update DebugLib to provide support for "err" command in the EFI Shell to adjust the filter mask for DEBUG() messages. The "err" command provide the ability to adjust this filter mask at a global level through an EFI Variable and at the module level through a the Debug Mask Protocol. In order to support the degree of flexibility, the DebugLib needs to use library to abstract the get/set operations to the filter mask. 1) Add default mappings for the DebugPrintErrorLevelLib to the DSC file for this package. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11373 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
b043ebc2192a83a947a7c6e9f3611e880ffde34e |
|
30-Jan-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add SerializeVariablesLib library instance This library implements the library class interface defined at: OvmfPkg/Include/Library/SerializeVariablesLib.h git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11285 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
999a815e9ff362f1f473415d476d937df4f0552c |
|
21-Jan-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add NullMemoryTestDxe driver This driver will find untested memory in the system, and make it available to the system. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11265 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
e313026824819e31cfea7bc09f91abe2abc1e7db |
|
16-Jan-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg EmuVariableFvb: Use 64-bit NV storage PCD Change from using PcdFlashNvStorageVariableBase to PcdFlashNvStorageVariableBase64. This will make sure the EMU Variable FVB will function in systems with more than 4GB of memory. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11252 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7ca30a6ac74e0e4435a5f3c94fb59e8d14d0594b |
|
13-Jan-2011 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg ResetSystemLib: Add shutdown support for OVMF This library will allow the UEFI RuntimeServices ResetSystem call to function with OVMF. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11251 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
4a8266f570ef411c21d7991f129e29aac817aa96 |
|
31-Dec-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Work around issue seen with kvm + grub2 (efi) When OVMF is run with kvm and grub2 (efi), an exception occurs when mmx/sse registers are accessed. As a work around, this change eliminates firmware usage of these register types. First, only the BaseMemoryLib implementation MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf is used. Second, the GCC compiler is passes the additional '-mno-mmx -mno-sse' parameters. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11218 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
689562cdb310aaad185ea8f0b733ef926e43e241 |
|
31-Dec-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OvmfPkg: Add USB support Add USB drivers to OVMF build git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11217 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7709cf48e4323817d080d8d133a6be54cf282518 |
|
06-Dec-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
DuetPkg, OvmfPkg, UnixPkg: Remove unnecessary reset during boot PcdResetOnMemoryTypeInformationChange is required to be set to TRUE for ACPI S4 support. These platforms do not support ACPI S4. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11120 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
152d9a6b0787e447ede419b48b59b8954a3e2bbd |
|
13-Oct-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OVMF: Only enable MDEPKG_NDEBUG for RELEASE builds git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10929 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c6efcc2aa97436f81628c38b85b858e0f955b40a |
|
12-Sep-2010 |
vanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524> |
Update Ovmf DSC/FDF files to support source debugging feature that will be switched on by "-D SOURCE_DEBUG_ENABLE". git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10868 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
42a83e80f37c11a359e0fe78bb01e98225589b7d |
|
03-Aug-2010 |
mdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524> |
Clean up SEC implementation for Ovmf. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10770 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7416f4eb3a558736c304c8da8ff035f095c8b874 |
|
26-Jul-2010 |
mdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524> |
Add support for e1000 NICs to OVMF 1) Update README describing the QEMU version required for e1000, where to download the UEFI drivers for e1000, and how to enable network drivers in the platform firmware 2) Update DSC/FDF files NETWORK_ENABLE switch to enable e1000 and network driver support git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10697 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7a743a2c091b1fc3b941a8e6c7a1ed456ca201f0 |
|
29-Jun-2010 |
mdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524> |
Remove extra references to binary INFs from DSC file Add build rules for BINARY INFs to the FDF files. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10610 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
76d428b107d6859abbf5bdcfceb8c5d2b251b455 |
|
26-Jun-2010 |
mdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524> |
Simplify DSC/FDF files for OVMF Remove duplicate FFS file GUID that would cause incremental builds to fail. Final output file is OVMF.FD and that is what should be used as bios.bin when running QEMU. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10605 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
fcd7e6778ad04d0b9f9f8e5e4d1a75c8696393dd |
|
05-May-2010 |
lgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524> |
Move SecExtractGuidedSectionLib instance from OvmfPkg to MdePkg git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10458 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
56d7640a53bf23a4afa211c49b82527879edf65f |
|
28-Apr-2010 |
hhtian <hhtian@6f19259b-4bc3-4df7-8a09-765794883524> |
Update the copyright notice format git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10439 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
953c3e369eca5dac12fe677ec23af2c231088780 |
|
22-Apr-2010 |
lgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524> |
Remove Framework DataHubDxe and DataHubStdErrDxe drivers from EDKII native PI/UEFI OVMF platform. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10394 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
efd82c5794ecbb77315a4358e1591b7480c444bc |
|
21-Mar-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OVMF: Add BlockMmioToBlockIoDxe driver This driver will wrapper BlockMmio protocol instances to produce the standard UEFI BlockIo protocol. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10296 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
8fa729a8b1401f01c6fd8ddbcab45e4a4904fa9a |
|
15-Mar-2010 |
lgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524> |
Merge the same type PCD section. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10243 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
4f344644297ba47484cd8ca5d47835ce2714aa81 |
|
26-Feb-2010 |
vanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524> |
add debug agent null instance in DSC file. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10101 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
b05ad4a765bc04ca3a3a7e80c39183b5538b7eec |
|
25-Feb-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
Cleanup: Remove PcdDxePcdDatabaseTraverseEnabled gEfiEdkModulePkgTokenSpaceGuid.PcdDxePcdDatabaseTraverseEnabled does not exist. Remove references to it in .dsc files and within the comments of the DXE PCD driver. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10092 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
7b202cb0f917fde1d84f77b000063d56e2c11530 |
|
24-Feb-2010 |
lgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524> |
1. Correct File header to ## @file 2. Remove unnecessary .common] postfix on section. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10051 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
e8d1b8d82ea15861403c66e581a9fbb4820e07c2 |
|
04-Jan-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OVMF Status Codes: Disable serial output, enable memory output git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9674 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
0bc7e56da90d983662505230f7fab3ad244c116d |
|
04-Jan-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OVMF: Define MDEPKG_NDEBUG to disable all debug code by default git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9673 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
c1c2669c6bb3ed4e23c06a93e60450a4fc3eccf2 |
|
04-Jan-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OVMF: Update OVMF FD/FV build to minimize ROM size * Only SEC is uncompressed now * The MAIN FV with PEI & DXE can easily shrink and grow as needed * The final output will now be OVMF.Fv rather than OVMF.fd * The final output size will be a multiple of 64kb git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9672 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
8cf01cae78c1e7b823587aac1b672a8c5adccaa9 |
|
04-Jan-2010 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OVMF: Use optimized BaseMemoryLib libraries git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9671 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
1630c6df559b34ae213925c3166b61b4371daef7 |
|
29-Dec-2009 |
xli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524> |
Refer to OEM status code hook library instances in MdeModulePkg. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9641 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
abec2e51888f926e51696697e864f55256126801 |
|
29-Dec-2009 |
xli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524> |
Refer to status code library instances in MdeModulePkg. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9635 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
e6d3b270e5873417399b26e09cf8807aba025f42 |
|
25-Dec-2009 |
xli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524> |
Remove status code modules' dependency on IntelFrameworkModulePkg. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9605 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
e471bf1f8632a00f95533c8cff783d9d6e9958b7 |
|
20-Dec-2009 |
klu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524> |
Fix bug that ovmf's BDS can not be entered and add SmbiosDxe driver into Ovmf's DSC and FDF file git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9579 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
73cbc5806925870a87a9ae815ad3d75b778576b8 |
|
08-Dec-2009 |
eric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524> |
fix build error, CpuIo module is replaced with CpuIo2Dxe git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9542 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
8273af4ea1f309d992b2b8703b4bff2a72184e89 |
|
26-Nov-2009 |
lgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524> |
Add DxeSecurityManagementLib instance git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9489 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
284af948b61d88e9c1c0c547028353e725693f34 |
|
25-Nov-2009 |
qhuang8 <qhuang8@6f19259b-4bc3-4df7-8a09-765794883524> |
Use InitializeFloatingPointUnits() from UefiCpuLib to initialize floating point units in SEC phase. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9481 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
713b7b5e974dd84a09acf66aa33bc9f50385a65c |
|
22-Oct-2009 |
klu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524> |
Remove redundant blank character in DSC file. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9356 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
4ad90a84f76f3570fe6298e3e83e8284c9dae5ec |
|
20-Oct-2009 |
davidhuang <davidhuang@6f19259b-4bc3-4df7-8a09-765794883524> |
1. Impl PI 1.2 PCI part. Major changes include: a. Update PciBusDxe module, and move it from IntelFrameworkModulePkg to MdeModulePkg b. Move IncompatiblePciDeviceSupportDxe module from IntelFrameworkModulePkg to MdeModulePkg c. Update the related consumes in inf/dsc/fdf git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9350 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
27f58ea1b22a59f6eb1950a6af2a47e3dc9b70c1 |
|
26-Sep-2009 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OVMF: Convert from EmuVariableRuntimeDxe to VariableRuntimeDxe. OVMF utilizes EmuVariableFvbRuntimeDxe to provide an emulated variable firmware volume block device for non-volatile variables. This allows the VariableRuntimeDxe and FaultTolerantWriteDxe to function without a real non-volatile backing store. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9317 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
14b21de9647ce6d0c714e9d458678cf1f4605c8f |
|
16-Sep-2009 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
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
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
77ba993c886a79b6199e941f4ddb7861ed3a211e |
|
07-Sep-2009 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
OVMF: Add support for more persistent NV variables which can survive a system reboot. Make use of EMU Variable driver's PcdEmuVariableNvStoreReserved to allow NV variables to persist a VM system reset. The contents of the NV variables will still be lost when the VM is shut down, but they appear to persist when the efi shell reset command is run. (Tested with QEMU 0.10.0.) git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9241 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
fef1f6627616aebeda57afdd605f712d3309c251 |
|
20-Aug-2009 |
jchen20 <jchen20@6f19259b-4bc3-4df7-8a09-765794883524> |
Delete the PcdFSBClock declaration. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9150 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
e900e19b2870dfb4bb319251a34d23d68a0782c5 |
|
07-Jul-2009 |
vanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524> |
Retired PciIncompatibleDeviceSupportLib from IntelFrameworkModulePkg. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8774 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
78e748bde37d3bda2b030783bc98078212943a48 |
|
07-Jul-2009 |
klu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524> |
Use PcAtChipsetPkg\PcatRealTimeClockRuntimeDxe\PcatRealTimeClockRuntimeDxe.inf instead of original PcAtChipsetPkg\PcRtc\RealTimeClock.inf git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8769 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
86fef5b4d705ead0177b4079befe65233b855325 |
|
30-Jun-2009 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
Add MdeModulePkg/Universal/PrintDxe driver to OVMF. Move many libraries to Libraries.common section. Add basic UEFI_APPLICATION libraries to allow applications to be easily added to OVMF builds. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8688 6f19259b-4bc3-4df7-8a09-765794883524
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|
49ba9447c92d6fca214476381107a180d08e59d1 |
|
27-May-2009 |
jljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524> |
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
/device/linaro/bootloader/edk2/OvmfPkg/OvmfPkgX64.dsc
|