PlatformBm.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /*++ @file
  2. Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
  3. Portions copyright (c) 2011, Apple Inc. All rights reserved.
  4. SPDX-License-Identifier: BSD-2-Clause-Patent
  5. **/
  6. #ifndef _PLATFORM_BM_H
  7. #define _PLATFORM_BM_H
  8. #include <PiDxe.h>
  9. #include <Guid/EmuSystemConfig.h>
  10. #include <Guid/EventGroup.h>
  11. #include <Protocol/EmuThunk.h>
  12. #include <Protocol/EmuIoThunk.h>
  13. #include <Protocol/EmuGraphicsWindow.h>
  14. #include <Protocol/GenericMemoryTest.h>
  15. #include <Protocol/LoadedImage.h>
  16. #include <Protocol/FirmwareVolume2.h>
  17. #include <Library/DebugLib.h>
  18. #include <Library/BaseMemoryLib.h>
  19. #include <Library/UefiBootServicesTableLib.h>
  20. #include <Library/UefiRuntimeServicesTableLib.h>
  21. #include <Library/MemoryAllocationLib.h>
  22. #include <Library/BaseLib.h>
  23. #include <Library/PcdLib.h>
  24. #include <Library/UefiBootManagerLib.h>
  25. #include <Library/DevicePathLib.h>
  26. #include <Library/UefiLib.h>
  27. #include <Library/BootLogoLib.h>
  28. #include <Library/HobLib.h>
  29. #include <Library/HiiLib.h>
  30. #define CONSOLE_OUT 0x00000001
  31. #define STD_ERROR 0x00000002
  32. #define CONSOLE_IN 0x00000004
  33. #define CONSOLE_ALL (CONSOLE_OUT | CONSOLE_IN | STD_ERROR)
  34. typedef struct {
  35. EFI_DEVICE_PATH_PROTOCOL *DevicePath;
  36. UINTN ConnectType;
  37. } BDS_CONSOLE_CONNECT_ENTRY;
  38. extern BDS_CONSOLE_CONNECT_ENTRY gPlatformConsole[];
  39. #define gEndEntire \
  40. { \
  41. END_DEVICE_PATH_TYPE,\
  42. END_ENTIRE_DEVICE_PATH_SUBTYPE,\
  43. { \
  44. END_DEVICE_PATH_LENGTH,\
  45. 0\
  46. }\
  47. }
  48. typedef struct {
  49. EMU_VENDOR_DEVICE_PATH_NODE EmuBus;
  50. EMU_VENDOR_DEVICE_PATH_NODE EmuGraphicsWindow;
  51. EFI_DEVICE_PATH_PROTOCOL End;
  52. } EMU_PLATFORM_UGA_DEVICE_PATH;
  53. //
  54. // Platform BDS Functions
  55. //
  56. /**
  57. Perform the memory test base on the memory test intensive level,
  58. and update the memory resource.
  59. @param Level The memory test intensive level.
  60. @retval EFI_STATUS Success test all the system memory and update
  61. the memory resource
  62. **/
  63. EFI_STATUS
  64. PlatformBootManagerMemoryTest (
  65. IN EXTENDMEM_COVERAGE_LEVEL Level
  66. );
  67. VOID
  68. PlatformBdsConnectSequence (
  69. VOID
  70. );
  71. #endif // _PLATFORM_BM_H