GraphicsOutput.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /** @file
  2. Header file for a generic GOP driver.
  3. Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
  4. SPDX-License-Identifier: BSD-2-Clause-Patent
  5. **/
  6. #ifndef _GRAPHICS_OUTPUT_DXE_H_
  7. #define _GRAPHICS_OUTPUT_DXE_H_
  8. #include <PiDxe.h>
  9. #include <IndustryStandard/Pci.h>
  10. #include <IndustryStandard/Acpi.h>
  11. #include <Guid/GraphicsInfoHob.h>
  12. #include <Protocol/DriverBinding.h>
  13. #include <Protocol/PciIo.h>
  14. #include <Protocol/DevicePath.h>
  15. #include <Protocol/GraphicsOutput.h>
  16. #include <Protocol/ComponentName.h>
  17. #include <Protocol/ComponentName2.h>
  18. #include <Library/BaseLib.h>
  19. #include <Library/UefiBootServicesTableLib.h>
  20. #include <Library/HobLib.h>
  21. #include <Library/DevicePathLib.h>
  22. #include <Library/FrameBufferBltLib.h>
  23. #include <Library/DebugLib.h>
  24. #include <Library/BaseMemoryLib.h>
  25. #include <Library/MemoryAllocationLib.h>
  26. #include <Library/UefiLib.h>
  27. #define MAX_PCI_BAR 6
  28. typedef struct {
  29. UINT32 Signature;
  30. EFI_HANDLE GraphicsOutputHandle;
  31. EFI_GRAPHICS_OUTPUT_PROTOCOL GraphicsOutput;
  32. EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE GraphicsOutputMode;
  33. EFI_DEVICE_PATH_PROTOCOL *DevicePath;
  34. EFI_PCI_IO_PROTOCOL *PciIo;
  35. UINT64 PciAttributes;
  36. FRAME_BUFFER_CONFIGURE *FrameBufferBltLibConfigure;
  37. UINTN FrameBufferBltLibConfigureSize;
  38. } GRAPHICS_OUTPUT_PRIVATE_DATA;
  39. #define GRAPHICS_OUTPUT_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('g', 'g', 'o', 'p')
  40. #define GRAPHICS_OUTPUT_PRIVATE_FROM_THIS(a) \
  41. CR(a, GRAPHICS_OUTPUT_PRIVATE_DATA, GraphicsOutput, GRAPHICS_OUTPUT_PRIVATE_DATA_SIGNATURE)
  42. extern EFI_COMPONENT_NAME_PROTOCOL mGraphicsOutputComponentName;
  43. extern EFI_COMPONENT_NAME2_PROTOCOL mGraphicsOutputComponentName2;
  44. #endif