/** @file Comet Lake U LP3 Multi-Board Initialization Pre-Memory library Copyright (c) 2020, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #include #include #include #include #include #include #include #include EFI_STATUS EFIAPI CometlakeURvpBoardDetect( VOID ); EFI_STATUS EFIAPI CometlakeURvpMultiBoardDetect ( VOID ); EFI_BOOT_MODE EFIAPI CometlakeURvpBoardBootModeDetect( VOID ); EFI_STATUS EFIAPI CometlakeURvpBoardDebugInit( VOID ); EFI_STATUS EFIAPI CometlakeURvpBoardInitBeforeMemoryInit( VOID ); BOARD_DETECT_FUNC mCometlakeURvpBoardDetectFunc = { CometlakeURvpMultiBoardDetect }; BOARD_PRE_MEM_INIT_FUNC mCometlakeURvpBoardPreMemInitFunc = { CometlakeURvpBoardDebugInit, CometlakeURvpBoardBootModeDetect, CometlakeURvpBoardInitBeforeMemoryInit, NULL, // BoardInitAfterMemoryInit NULL, // BoardInitBeforeTempRamExit NULL, // BoardInitAfterTempRamExit }; EFI_STATUS EFIAPI CometlakeURvpMultiBoardDetect( VOID ) { CometlakeURvpBoardDetect(); if (LibPcdGetSku () == BoardIdCometLakeULpddr3Rvp) { RegisterBoardPreMemInit (&mCometlakeURvpBoardPreMemInitFunc); } return EFI_SUCCESS; } EFI_STATUS EFIAPI PeiCometlakeURvpMultiBoardInitPreMemLibConstructor ( VOID ) { return RegisterBoardDetect (&mCometlakeURvpBoardDetectFunc); }