| Age | Commit message (Collapse) | Author | Files | Lines |
|
Refactor BoardBdsHookLib to use SimicsUefiDeviceLib and add:
- Video mode selection from simics-uefi device before boot handoff
- Boot device priority from simics-uefi device config string
- Boot option sorting (USB=4, DVD=5, HDD=6, PXE=7, HTTP=8, Shell=150)
- USB HID keyboard device path registration in ConIn/ConInDev
- "Press ESC to enter BIOS menu" on serial and graphics consoles
Update BoardBootManager progress bar text to match.
Signed-off-by: Robert Guenzel <robert.guenzel@intel.com>
|
|
The Simics QSP platform uses a hidden PCI config space device
(simics-uefi device, VID/DID=0xFFFF, SubsysVID/ID=0x8086/0x8086) to
exchange configuration data between the simulator and BIOS. The device
detection logic was duplicated across multiple consumers.
Add SimicsUefiDeviceLib, a shared DXE library that provides:
- SimicsUefiDeviceCheck: probe device presence via PCI config reads
- SimicsUefiDeviceRead: read from device register offset
- SimicsUefiDeviceWrite: write to device register offset
Declare PCI BDF and capabilities register base PCDs in OpenBoardPkg.dec
and add the library class mapping in OpenBoardPkg.dsc.
Signed-off-by: Robert Guenzel <robert.guenzel@intel.com>
|
|
SimicsOpenBoardPkg does not set several MinPlatformPkg FV PCDs
(PcdFlashFvSecurityBase/Size, PcdFlashFvAdvancedBase/Size, and others),
leaving them at their default value of 0. ReportPreMemFv() and
ReportPostMemFv() unconditionally install FV Info PPIs for all of these,
which triggers notify callbacks (e.g., Tcg2Pei) that attempt to process
a bogus FV at address 0 with size 0, leading to undefined behavior.
Add null guards to skip FV Info PPI installation when both the base
address and size PCDs are zero.
Signed-off-by: Robert Guenzel <robert.guenzel@intel.com>
|
|
Fedora grub2 triggers page faults when EFI_MEMORY_ATTRIBUTE_PROTOCOL is
present during OS boot. Add a PCD-gated workaround that uninstalls all
instances of the protocol before handing off to the boot loader.
Declare PcdUninstallMemAttrProtocol (default FALSE) in
OpenBoardPkg.dec [PcdsFeatureFlag]. When enabled, BoardBdsHookLib
enumerates all handles exposing gEfiMemoryAttributeProtocolGuid and
removes them in BdsAfterConsoleReadyBeforeBootOptionCallback.
Signed-off-by: Robert Guenzel <robert.guenzel@intel.com>
|
|
Create MmPlatformHobProducerLib instance for QSP boot.
In this libarary, CreateMmPlatformHob() function is called
by StandaloneMm IPL to create all Platform specific HOBs
that required by Standalone MM environment. On return, a list
of ResourceDescriptorHob are generated to report MMIO ranges.
All memory ranges except SMRAM and EFI_RESOURCE_SYSTEM_MEMORY
type memory ranges are treated as MMIO.
Signed-off-by: Dun Tan <dun.tan@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Jiaxin Wu <jiaxin.wu@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Cc: Wei6 Xu <wei6.xu@intel.com>
Cc: Yuanhao Xie <yuanhao.xie@intel.com>
|
|
__FUNCTION__ is a pre-standard extension that gcc and Visual C++ among
others support, while __func__ was standardized in C99.
Since it's more standard, replace __FUNCTION__ with __func__ throughout
edk2-platforms.
Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
|
|
Replaced the deprecated EFI_D_{INFO,WARN,ERROR,VERBOSE} usage with
DEBUG_{INFO,WARN,ERROR,VERBOSE}.
Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
|
|
Signed-off-by: Ray Ni <ray.ni@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Reviewed-by: Zhiguang Liu <zhiguang@liu@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
|
|
Simics QSP platform always supports flash devices.
The logic that was ported from OVMF where the flash devices might
not be supported in some configurations is useless in QSP platform.
So, the patch removes all of them.
Signed-off-by: Ray Ni <ray.ni@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Reviewed-by: Zhiguang Liu <zhiguang@liu@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
|
|
Signed-off-by: Ray Ni <ray.ni@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Reviewed-by: Zhiguang Liu <zhiguang@liu@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
|
|
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2368
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Signed-off-by: Guomin Jiang <guomin.jiang@intel.com>
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
|
|
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2777
With some functions to be deprecated, their usage in platforms
should also be updated.
Cc: Agyeman Prince <prince.agyeman@intel.com>
Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com>
Reviewed-by: Prince Agyeman <prince.agyeman@intel.com>
|
|
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336
This library implements PlatformBootManagerWaitCallback
and PlatformBootManagerUnableToBoot which can be linked Minplatform's
PlatformBootManager libary instance.
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Michael Kubacki <michael.a.kubacki@intel.com>
Signed-off-by: Prince Agyeman <prince.agyeman@intel.com>
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
Reviewed-by: Michael Kubacki <michael.a.kubacki@intel.com>
|
|
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336
Added Board BDS Hook library that implements simics specific
Bds hook points or callbacks.
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Michael Kubacki <michael.a.kubacki@intel.com>
Co-authored-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
Signed-off-by: Prince Agyeman <prince.agyeman@intel.com>
Reviewed-by: Michael Kubacki <michael.a.kubacki@intel.com>
|
|
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2225
Currently, gcc 5 encounters an error "unused-but-set-variable" in
BdsPlatform.c as a result of a Status variable not being used
after it's set.
This was fixed by printing the Status variable when
EfiBootManagerDeleteLoadOptionVariable function encounters
an error.
Cc: Ankit Sinha <ankit.sinha@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Kubacki Michael A <michael.a.kubacki@intel.com>
Signed-off-by: Prince Agyeman <prince.agyeman@intel.com>
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
Reviewed-by: Michael Kubacki <michael.a.kubacki@intel.com>
|
|
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2249
PCDs declared in the SimicsOpenBoardPkg currently use the GUID
gBoardModuleTokenSpaceGuid. The same name is used in other board
packages and a package has been added called BoardModulePkg so
this name is now misleading.
This change assigns a unique GUID value and a name specific to the
package to provide differentiation from PCDs in other board
packages.
Cc: Agyeman Prince <prince.agyeman@intel.com>
Cc: Wei David Y <david.y.wei@intel.com>
Signed-off-by: Michael Kubacki <michael.a.kubacki@intel.com>
Reviewed-by: Prince Agyeman <prince.agyeman@intel.com>
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
|
|
When running networks of multiple machines, Simics assigns different
disk IDs to each disk created. This change the boot priority and can't
boot from SATA HDD directly.
Clear boot priority in NVRAM can fix this issue.
Cc: Hao Wu <hao.a.wu@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Ankit Sinha <ankit.sinha@intel.com>
Cc: Agyeman Prince <prince.agyeman@intel.com>
Cc: Kubacki Michael A <michael.a.kubacki@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Co-authored-by: Michael Kubacki <michael.a.kubacki@intel.com>
Signed-off-by: David Wei <david.y.wei@intel.com>
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
|
|
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2162
Removed unused functions in SecMain.c and
BdsPlatform.c.
Cc: David Wei <david.y.wei@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Ankit Sinha <ankit.sinha@intel.com>
Cc: Agyeman Prince <prince.agyeman@intel.com>
Cc: Kubacki Michael A <michael.a.kubacki@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Signed-off-by: Prince Agyeman <prince.agyeman@intel.com>
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
Reviewed-by: Michael Kubacki <michael.a.kubacki@intel.com>
|
|
Add modules Include, Library, SimicsDxe, SimicsPei, Policy,
SmbiosPlatformDxe and SecCore for Simics Quick Start Platform support.
Cc: Hao Wu <hao.a.wu@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Ankit Sinha <ankit.sinha@intel.com>
Cc: Agyeman Prince <prince.agyeman@intel.com>
Cc: Kubacki Michael A <michael.a.kubacki@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Signed-off-by: David Wei <david.y.wei@intel.com>
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
Reviewed-by: Michael Kubacki <michael.a.kubacki@intel.com>
|