drivers/intel/fsp2_0: Implement EFI_MP_SERVICES_PPI structure APIs

This patch ensures to have below listed features:

1. All required APIs to create MP service structure.
2. Function to get MP service PPI status

MP specification here:
http://github.com/tianocore/edk2/blob/master/MdePkg/Include/Ppi/MpServices.h

coreboot design document here:
../Documentation/soc/intel/icelake/MultiProcessorInit.md

Supported platform will call fill mp_services structure so that FSP can
install the required PPI based on coreboot published structure.

BRANCH=none
BUG=b:74436746
TEST=Able to publish MP service PPI in coreboot.

Change-Id: Ie844e3f15f759ea09a8f3fd24825ee740151c956
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/25634
Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Subrata Banik
2018-04-12 19:25:37 +05:30
committed by Patrick Georgi
parent b55df4f1a8
commit 6662cb3dc2
5 changed files with 244 additions and 1 deletions

View File

@@ -183,10 +183,13 @@ config FSP_PLATFORM_MEMORY_SETTINGS_VERSIONS
config FSP_PEIM_TO_PEIM_INTERFACE
bool
select FSP_USES_MP_SERVICES_PPI
help
This option allows SOC user to create specific PPI for Intel FSP
usage, coreboot will provide required PPI structure definitions
along with all APIs as per EFI specification.
along with all APIs as per EFI specification. So far this feature
is limited till EFI_PEI_MP_SERVICE_PPI and this option might be
useful to add further PPI if required.
if FSP_PEIM_TO_PEIM_INTERFACE
source "src/drivers/intel/fsp2_0/ppi/Kconfig"