DxeSaPolicyUpdate.c 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /** @file
  2. This file is the library for SA DXE Policy initialization.
  3. Copyright (c) 2019 - 2020 Intel Corporation. All rights reserved.<BR>
  4. SPDX-License-Identifier: BSD-2-Clause-Patent
  5. **/
  6. #include <DxeSaPolicyUpdate.h>
  7. #include <Library/ConfigBlockLib.h>
  8. /**
  9. Get data for platform policy from setup options.
  10. @param[in] SaPolicy The pointer to get SA Policy protocol instance
  11. @retval EFI_SUCCESS Operation success.
  12. **/
  13. EFI_STATUS
  14. EFIAPI
  15. UpdateDxeSaPolicy (
  16. IN OUT SA_POLICY_PROTOCOL *SaPolicy
  17. )
  18. {
  19. EFI_STATUS Status;
  20. GRAPHICS_DXE_CONFIG *GraphicsDxeConfig;
  21. PCIE_DXE_CONFIG *PcieDxeConfig;
  22. MISC_DXE_CONFIG *MiscDxeConfig;
  23. MEMORY_DXE_CONFIG *MemoryDxeConfig;
  24. GraphicsDxeConfig = NULL;
  25. PcieDxeConfig = NULL;
  26. MiscDxeConfig = NULL;
  27. MemoryDxeConfig = NULL;
  28. //
  29. // Get requisite IP Config Blocks which needs to be used here
  30. //
  31. Status = GetConfigBlock ((VOID *)SaPolicy, &gGraphicsDxeConfigGuid, (VOID *)&GraphicsDxeConfig);
  32. ASSERT_EFI_ERROR (Status);
  33. Status = GetConfigBlock ((VOID *)SaPolicy, &gMiscDxeConfigGuid, (VOID *)&MiscDxeConfig);
  34. ASSERT_EFI_ERROR (Status);
  35. Status = GetConfigBlock ((VOID *)SaPolicy, &gPcieDxeConfigGuid, (VOID *)&PcieDxeConfig);
  36. ASSERT_EFI_ERROR (Status);
  37. Status = GetConfigBlock ((VOID *)SaPolicy, &gMemoryDxeConfigGuid, (VOID *)&MemoryDxeConfig);
  38. ASSERT_EFI_ERROR (Status);
  39. PcieDxeConfig->PegAspmL0s[0] = 3;
  40. PcieDxeConfig->PegAspmL0s[1] = 3;
  41. PcieDxeConfig->PegAspmL0s[2] = 3;
  42. return EFI_SUCCESS;
  43. }