123 Commits

Author SHA1 Message Date
Antara Borwankar
df944f5298 feat: Add FIPS self test support
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>
2025-03-23 22:09:28 -07:00
Chirag Vijay Kolhe
a41dc0aad4 fix: [Common] Remove IAS boot image support
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>
2025-02-11 13:45:09 -07:00
Sachin Kamat
13997bd3f2 fix: [Common] Remove Trusty OS support
Trusty OS is not used. Clean up the code.

Signed-off-by: Sachin Kamat <sachin.kamat@intel.com>
2025-02-10 15:50:54 -07:00
Bejean Mosher
0bcefec921 feat: Support calling into x64 FSP
FSP 2.4 introduces the possibility of FSP built for x64 architecture.
This adds support for x64 FSP calling conventions based on the header x64
support attribute. Support for x64 FSP-T requires entering long mode
prior to FSP-T execution.

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>
2025-02-06 10:08:15 -07:00
Guo Dong
c1326e0ae2 Add FDT support for universal payload
New universal payload use FDT (Flat Device Tree) instead
of HOB to pass info to payload.

Signed-off-by: Guo Dong <guo.dong@intel.com>
2025-01-10 13:19:29 -07:00
Bejean Mosher
e69378bc2d feat: Add Board flag for AP Init Wait time
Some silicon requires longer than provided for all APs to enter the wakeup
routine. This change makes this platform configurable. The default wait
time is none and can be increased for platforms with higher core count Si.

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>
2024-11-21 14:22:48 -07:00
Antara Borwankar
7328aa169f feat: [IPPCRYPTO]Added perf lib for ipp-crypto
Signed-off-by: Antara Borwankar <antara.borwankar@intel.com>
2024-10-15 07:48:18 -07:00
Pastorcici, Mariano-paulX
c50658ae6b feat: [common] Enable PCIe resizable BAR support
This commit adds support for PCIe resizable BARsupport.
The feature can be enabled by setting PcdResizableBarSupport
for the board build script and its disabled by default.

Signed-off-by: pastorcx <mariano-paulx.pastorcici@intel.com>
2024-09-09 10:30:57 -07:00
Bejean Mosher
04132381bd feat: Add BoardConfig field to control Stage1B remap
Adding new Board Config item REMAP_STAGE1B to control remapping Stage1B
into permanent memory after FSP-M. Decouple this from ENABLE_FAST_BOOT
and STAGE1B_XIP. This makes it simpler to enable this remap when the
slight performance boost may be needed, and leave it disabled by default.

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>
2024-06-04 13:07:16 -07:00
Guo Dong
c781b14a03 feat: Add FIT image support
New universal payload used FIT image format.
The spec defined https://universalpayload.github.io/spec/chapter2-payload-image-format.html
This change could boot FIT universal payload.

Signed-off-by: Guo Dong <guo.dong@intel.com>
2024-04-24 09:32:51 -07:00
aborwank
6875a3bdc9 feat: creating actm binary to be copied in build folder (#2141)
For platforms with seperate actm binary added code to
copy actm binary to build fv folder

Signed-off-by: Antara Borwankar <antara.borwankar@intel.com>
2024-03-21 21:21:13 -07:00
Bejean Mosher
1d38f8e69f feat: Validate BMP headers to protect against LogoFAIL.
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>
2024-01-08 15:04:47 -07:00
stanley
8cc2cab427 feat: [EHL] enable BoardNotifyPhase during FWU (#1939)
The FSP may request for a reboot when some features are
enable/disable. The SiliconInit FW update is one case for the
"FSP requested boot". Without the patch, SBL has no way to
get the notification from CallFspNotifyPhase.

The patch introduces a feature, PcdEnableFwuNotify,
to allow SBL to keep BoardNotifyPhase during firmware update.

On EHL, the feature can be enabled by "disable BIOS Lock".

Verify: EHL-CRB

Signed-off-by: Stanley Chang <stanley.chang@intel.com>
2023-07-14 18:50:01 -04:00
Stanley Chang
23d9187bde fix: [EHL] send EOP message
EHL FSP does not send EOP (End Of Post) message at the
Ready to Boot. The patch adds support for SBL to send
the EOP during Ready to Boot.

Verified: EHL CRB

Signed-off-by: Stanley Chang <stanley.chang@intel.com>
2023-05-24 11:23:54 -07:00
Bejean Mosher
96f72c39b8 feat: FuSa Configuration library template, and ADL/RPL FuSa Cfg Data.
Added Null template for FusaConfigLib. Platforms supporting FuSa should
follow this template for enabling FuSa configuration prior to FSP-M and
FSP-S.

Added ADL/RPL CfgData fields for FuSa according to SBL FuSa software
requirements, and dlt file for enabling FuSa and related configuration.

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>
2023-04-26 14:54:21 -07:00
Atharva Lele
1c807e51fa Fix OsLoader handling of non-container images and remove PcdContainerBootEnabled (#1843)
* OsLoader: set default status to EFI_UNSUPPORTED when parsing a boot image

This was set to EFI_SUCCESS which resulted in ParseBootImages() returning
EFI_SUCCESS even if the boot image was not a container or a component.

Thus, the boot would continue and fail at a later stage due to the
LoadedImage structure not being populated correctly.

Setting it to EFI_UNSUPPORTED will result in ParseBootImages() returning
EFI_UNSUPPORTED if a non-supported boot image is provided and OsLoader
will attempt to boot the next entry in the boot options list.

Signed-off-by: Atharva Lele <atharva.lele@intel.com>

* Remove PcdContainerBootEnabled PCD

SBL requires boot images to be packaged as a container or a component

Signed-off-by: Atharva Lele <atharva.lele@intel.com>

---------

Signed-off-by: Atharva Lele <atharva.lele@intel.com>
2023-03-10 14:14:13 -08:00
Bejean Mosher
bd4e688468 fix: Revert PcdDebugPrintErrorLevel change made mistakenly in #1760.
PR #1760 mistakenly included a debug change to increase the default debug
print level. Reverting that one change.

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>
2022-11-21 13:59:25 -07:00
bejeanmo
82d0a283c9 feat: [ADL/RPL] Add core changes to allow for platform CrashLog support. (#1760)
- Added ADL BERT table template
- Added CrashLogLib calls from ADL board init lib  at PostMemInit and
    PlatformUpdateAcpiTable
- Added CrashLogLib header and Null Lib
- Added header file for Common Platform Error Record definitions.

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>
2022-11-21 12:16:48 -05:00
Sean McGinn
a52a054333 Check that uCode slot sizes line up during uCode update
Currently, users are able to update the uCode component
with a new binary that uses a different slot size than
the existing binary. If these slot sizes do not line up,
there is potential to trigger recovery (if enabled) or
brick the system. This change disallows updates where
these slot sizes do not line up.

Signed-off-by: Sean McGinn <sean.mcginn@intel.com>
2022-11-04 15:00:05 -07:00
bejeanmo
15f365d774 fix: [ADL] TCC was never getting enabled via the board config option. (#1715)
PcdTccEnabled was declared as a FeaturePcd which evaluates to a code symbol
and can't be used in a #if. From the preprocessor perspective it is always
undefined. Changed this pcd to a FixedPcd instead.

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>

Signed-off-by: Bejean Mosher <bejean.mosher@intel.com>
2022-10-10 16:42:22 -04:00
Sean McGinn
3a6aa45abb Create FirmwareUpdateStatus header and FirmwareResiliencyLib
library

Migrates FW resiliency APIs of Stage1B.c to
FirmwareResiliencyLib
Migrates FW update status types from FirmwareUpdateLib.h and
BootloaderCommonLib.h to FirmwareUpdateStatus.h

Signed-off-by: Sean McGinn <sean.mcginn@intel.com>
2022-09-06 09:38:52 -07:00
Sean McGinn
eeb05a8a5e Add SBL resiliency common code
This change adds SBL resiliency-related code
to common SG1A, SG1B, SG02, and FWU code

Signed-off-by: Sean McGinn <sean.mcginn@intel.com>
2022-08-17 11:40:43 -07:00
Sean McGinn
ca305b89bf Leverage EDKII Build System to Perform uCode Slotting
Signed-off-by: Sean McGinn <sean.mcginn@intel.com>
2022-05-19 09:56:34 -07:00
Raghava Gudla
0e6cda520d Add support for getting csme boot time perf data
This patch added support to get csme boot time performance
data and display it in perf command and also before booting
to linux.

Introduced a board config option BOOT_PERFORMANCE_MASK to control
PcdBootPerformanceMask, BIT 2 now enables printing CSME boot
performance data.

Signed-off-by: Raghava Gudla <raghava.gudla@intel.com>
2022-05-11 09:02:52 -07:00
Guo Dong
a7163e897a Support different CPU sort method
Different use case might want to have a different CPU order.
e.g. P-core first or E-core first.
This patch adds an option to help user sort CPU.

platform could add "self.CPU_SORT_METHOD  = value" to
BoardConfig.py to override the default value.

Signed-off-by: Guo Dong <guo.dong@intel.com>
2022-04-14 10:23:27 -07:00