/** @file Tiger Lake U RVP SMM Multi-Board ACPI Support library Copyright (c) 2021, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #include #include #include #include #include #include #include #include #include #include EFI_STATUS EFIAPI TglBoardEnableAcpi ( IN BOOLEAN EnableSci ); EFI_STATUS EFIAPI TglBoardDisableAcpi ( IN BOOLEAN DisableSci ); EFI_STATUS EFIAPI SiliconEnableAcpi ( IN BOOLEAN EnableSci ); EFI_STATUS EFIAPI SiliconDisableAcpi ( IN BOOLEAN DisableSci ); EFI_STATUS EFIAPI MultiBoardEnableAcpi ( IN BOOLEAN EnableSci ) { SiliconEnableAcpi (EnableSci); return TglBoardEnableAcpi (EnableSci); } EFI_STATUS EFIAPI MultiBoardDisableAcpi ( IN BOOLEAN DisableSci ) { SiliconDisableAcpi (DisableSci); return TglBoardDisableAcpi (DisableSci); } BOARD_ACPI_ENABLE_FUNC mBoardAcpiEnableFunc = { MultiBoardEnableAcpi, MultiBoardDisableAcpi, }; /** The constructor function to register mBoardAcpiEnableFunc function. @param[in] ImageHandle The firmware allocated handle for the EFI image. @param[in] SystemTable A pointer to the EFI System Table. @retval EFI_SUCCESS This constructor always return EFI_SUCCESS. It will ASSERT on errors. **/ EFI_STATUS EFIAPI SmmMultiBoardAcpiSupportLibConstructor ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ) { DEBUG ((DEBUG_INFO, "SKU_ID: 0x%x\n", LibPcdGetSku())); return RegisterBoardAcpiEnableFunc (&mBoardAcpiEnableFunc); }