/** @file Kaby Lake RVP 3 Multi-Board Initialization Pre-Memory library Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #include #include #include #include #include #include #include #include EFI_STATUS EFIAPI KabylakeRvp3BoardDetect ( VOID ); EFI_STATUS EFIAPI KabylakeRvp3MultiBoardDetect ( VOID ); EFI_BOOT_MODE EFIAPI KabylakeRvp3BoardBootModeDetect ( VOID ); EFI_STATUS EFIAPI KabylakeRvp3BoardDebugInit ( VOID ); EFI_STATUS EFIAPI KabylakeRvp3BoardInitBeforeMemoryInit ( VOID ); BOARD_DETECT_FUNC mKabylakeRvp3BoardDetectFunc = { KabylakeRvp3MultiBoardDetect }; BOARD_PRE_MEM_INIT_FUNC mKabylakeRvp3BoardPreMemInitFunc = { KabylakeRvp3BoardDebugInit, KabylakeRvp3BoardBootModeDetect, KabylakeRvp3BoardInitBeforeMemoryInit, NULL, // BoardInitAfterMemoryInit NULL, // BoardInitBeforeTempRamExit NULL, // BoardInitAfterTempRamExit }; EFI_STATUS EFIAPI KabylakeRvp3MultiBoardDetect ( VOID ) { KabylakeRvp3BoardDetect (); if ((LibPcdGetSku () == BoardIdKabyLakeYLpddr3Rvp3) || (LibPcdGetSku () == BoardIdSkylakeRvp3)) { RegisterBoardPreMemInit (&mKabylakeRvp3BoardPreMemInitFunc); } return EFI_SUCCESS; } EFI_STATUS EFIAPI PeiKabylakeRvp3MultiBoardInitPreMemLibConstructor ( VOID ) { return RegisterBoardDetect (&mKabylakeRvp3BoardDetectFunc); }