New UEFI payload depends on SBL to rebase SMM and reports SMM rebase information.
This patch build SMM rebase related HOB for UEFI payload.
SMM rebase memory is located at the end of SMRAM. and this patch also updated
SMM memory HOB.
Signed-off-by: Guo Dong <guo.dong@intel.com>
Currently SBL supports SMM REBASE based on configuration.
1) When payload doesn't support SMM, SBL need enable SMM rebase.
So SBL will rebase SMM to SMRAM and set SMRR to prevent SMRAM
access out of SMM and prevent payload SMM driver dispatch.
2) When payload support SMM, SBL need disable SMM rebase.
In this case SBL do nothing for SMM. Payload will do SMM
rebase.
In new UEFI payload (after stable branch 202311), SMM relocation
was removed CPU SMM driver. To work with new UEFI payload, SMM
relocation is expected in SBL, but SMRR should not be set so that
SMM drivers in UEFI payload could be dispatched into SMRAM.
This patch adds a new SMM rebase configuration that it rebase SMM
but it doesn't set SMRR.
Currently SBL supports rebase AUTO setting based on payload. This
patch also add auto support.
Signed-off-by: Guo Dong <guo.dong@intel.com>
Added fips_selftest run before any crypto use in Stage1A.
updated IppCrypto to 1.0.1 version
Signed-off-by: Antara Borwankar <antara.borwankar@intel.com>
IAS boot image format is deprecated; it is recommended to use container
boot image.
- Removed references,files related to IAS image.
- Replaced IAS image boot options with container type image.
Signed-off-by: Chirag Vijay Kolhe <chirag.vijay.kolhe@intel.com>
Remove clear FSP hob from Uefi payload boot path because Fsp NotifyPhase needs FSP hob to work.
Fixed 32bit address FspHotList in FSP INFO. UEFI payload consumes ths info to clear FSP hob.
Move clear FSP hob at EndOfFirmware for Osloader.
Signed-off-by: Kevin Tsai <kevin.tsai@intel.com>
New universal payload uses FDT instead HOB to pass information
from bootloader to payload. This BuildFdtLib could help build
the required FDT nodes.
Signed-off-by: Guo Dong <guo.dong@intel.com>
Simplify GPIO programming in Stage1A
Add P2SB devices and remove unused GPIO code in Stage1B.
Use GPIO config data instead of static GPIO table in Stage2.
Update PCH P2SB SMREG_BAR using FSP HOB.
Update ACPI NVS GEIx for SOC and PCH
Signed-off-by: Guo Dong <guo.dong@intel.com>
- Update Common MeChipsetLib to account for ARLS Me Bus.
Now,the bus number comes from Platform code:
if ARLS bus = 0x80, else bus = 0x0
- Update Heci Pci read calls in HeciMeExtLib to account for
both ARLS and ARL U/H BDF differences.
- Delete ARL specific MeChipset header files as it now uses
common header files from Common Package.
Signed-off-by: Sindhura Grandhi <sindhura.grandhi@intel.com>
Adding 64-bit DebugAgentLib source files, header files and nasm files to
build SBL image with ENABLE_SOURCE_DEBUG=1
Signed-off-by: Ong Ee Lim <ee.lim.ong@intel.com>
There is a flag in both multiboot and multiboot2 image indicating
modules must be loaded to page boundaries. Currently this flag is not
handled when loading multiboot images in ELF format. Check this flag
and move the loaded modules if needed before SetupMultibootInfo().
Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>
* Sync BaseTools to align with edk2-stable202311
Keep the SBL specific change (e.g. Lz4).
Signed-off-by: Guo Dong <guo.dong@intel.com>
* feat: Sync MdePkg from EDK2 edk2-stable202311 branch
Only sync required file without any changes to EDK2 files.
Signed-off-by: Guo Dong <guo.dong@intel.com>
* feat: Update MdePkg for SBL after sync from EDK2
Signed-off-by: Guo Dong <guo.dong@intel.com>
* Update SBL after updating Basetool and MdePkg
After Sync BaseTool and MdePkg to edk2-stable202311,
Need update SBL code to align with this change.
Signed-off-by: Guo Dong <guo.dong@intel.com>
* feat: rollback some changes after mdepkg sync
New change from MdePkg requires new NASM version.
To make sure NASM 2.14.02 still works, just rollback
few changes.
Signed-off-by: Guo Dong <guo.dong@intel.com>
* feat: Update component size to fix build failure
After syncing BaseTool and MdePkg, some components would
have a little bigger size. So update the config to fix the
build failure.
Signed-off-by: Guo Dong <guo.dong@intel.com>
* feat: Remove unused asl code
Some ASL files don't exist but they are included in other asl files.
It would cause build failure with new build BaseTool. So just remove
them to fix the build failure.
Signed-off-by: Guo Dong <guo.dong@intel.com>
---------
Signed-off-by: Guo Dong <guo.dong@intel.com>
The SBL logo is verified as part of Stage2 verification, so untrusted
logos won't be parsed, but it's still good to prevent dereferencing BMP
header pointers that may fall outside of BMP file.
Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>
Currently only PreOs and Extra0 image info is printed in boot options
list, this patch prints all of them.
Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>
The MULTIBOOT_MODULE type indicates the container contains only
multiboot modules and their string without a bootable kernel. Similar
to the MULTIBOOT container type, the files in container should be
organized in pairs which contains a zero-teminated text for string
and the a module binary.
This type should only be used in Extra images when Normal image is in
multiboot/multiboot2 format.
Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>
This patch adds a new struct FILE_IMAGE_LOCATION in BOOT_IMAGE to store
the SwPart and FsType of image file. This enables loading extra images
from a partition different than normal image.
Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>