diff options
author | Subrata Banik <subrata.banik@intel.com> | 2020-05-26 18:26:54 +0530 |
---|---|---|
committer | Duncan Laurie <dlaurie@chromium.org> | 2020-06-14 17:48:31 +0000 |
commit | 33d9c4ad7e9e8048e90858edd8e0212e23a0ac8e (patch) | |
tree | d0c401d3d2c099bf1a307547bc53dfafa3b686c2 /src/drivers/intel/fsp2_0/include/fsp/upd.h | |
parent | f7841d03e2580c666f544e7bb625b1df0ed298a4 (diff) |
drivers/intel/fsp2_0: Add FSP 2.2 specific support
• Based on FSP EAS v2.1 – Backward compatibility is retained.
• Add multi-phase silicon initialization to increase the modularity of the
FspSiliconInit() API.
• Add FspMultiPhaseSiInit() API
• FSP_INFO_HEADER changes
o Added FspMultiPhaseSiInitEntryOffset
• Add FSPS_ARCH_UPD
o Added EnableMultiPhaseSiliconInit, bootloaders designed for
FSP 2.0/2.1 can disable the FspMultiPhaseSiInit() API and
continue to use FspSiliconInit() without change.
FSP 2.2 Specification:
https://www.intel.com/content/www/us/en/intelligent-systems/intel-firmware-support-package/intel-fsp-overview.html
Change-Id: If7177a267f3a9b4cbb60a639f1c737b9a3341913
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/41728
Reviewed-by: Srinidhi N Kaushik <srinidhi.n.kaushik@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/drivers/intel/fsp2_0/include/fsp/upd.h')
-rw-r--r-- | src/drivers/intel/fsp2_0/include/fsp/upd.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/drivers/intel/fsp2_0/include/fsp/upd.h b/src/drivers/intel/fsp2_0/include/fsp/upd.h index bcfee6c727..979cff3b91 100644 --- a/src/drivers/intel/fsp2_0/include/fsp/upd.h +++ b/src/drivers/intel/fsp2_0/include/fsp/upd.h @@ -54,4 +54,22 @@ struct FSPM_ARCH_UPD { uint8_t Reserved1[8]; } __packed; +struct FSPS_ARCH_UPD { + /// + /// Revision of the structure. For FSP v2.2 value is 1. + /// + uint8_t Revision; + uint8_t Reserved[3]; + /// + /// Length of the structure in bytes. The current value for this field is 32 + /// + uint32_t Length; + uint8_t Reserved1[4]; + /// + /// To enable multi-phase silicon initialization the bootloader must set non-zero value + /// + uint8_t EnableMultiPhaseSiliconInit; + uint8_t Reserved2[19]; +} __packed; + #endif /* _FSP2_0_UPD_H_ */ |