14#define EFI_UGA_IO_PROTOCOL_GUID \
15 { 0x61a4d49e, 0x6f68, 0x4f1b, { 0xb9, 0x22, 0xa8, 0x6e, 0xed, 0xb, 0x7, 0xa2 } }
19typedef UINT32 UGA_STATUS;
23 UgaDtGraphicsController,
24 UgaDtOutputController,
27} UGA_DEVICE_TYPE, *PUGA_DEVICE_TYPE;
29typedef UINT32 UGA_DEVICE_ID, *PUGA_DEVICE_ID;
32 UGA_DEVICE_TYPE deviceType;
33 UGA_DEVICE_ID deviceId;
34 UINT32 ui32DeviceContextSize;
35 UINT32 ui32SharedContextSize;
39 VOID *pvDeviceContext;
40 VOID *pvSharedContext;
41 VOID *pvRunTimeContext;
43 VOID *pvBusIoServices;
44 VOID *pvStdIoServices;
58 UgaIoGetMemoryConfiguration,
62 UgaIoDeviceChannelOpen,
63 UgaIoDeviceChannelClose,
64 UgaIoDeviceChannelRead,
65 UgaIoDeviceChannelWrite,
66 UgaIoGetPersistentDataSize,
67 UgaIoGetPersistentData,
68 UgaIoSetPersistentData,
69 UgaIoGetDevicePropertySize,
70 UgaIoGetDeviceProperty,
71 UgaIoBtPrivateInterface
72} UGA_IO_REQUEST_CODE, *PUGA_IO_REQUEST_CODE;
75 IN UGA_IO_REQUEST_CODE ioRequestCode;
77 IN UINT64 ui64InBufferSize;
78 OUT VOID *pvOutBuffer;
79 IN UINT64 ui64OutBufferSize;
80 OUT UINT64 ui64BytesReturned;
106 IN VOID *RunTimeContext,
162extern EFI_GUID gEfiUgaIoProtocolGuid;
172 UINT32 SizeOfEntries;
173 UINT32 NumberOfEntries;
177 EfiUgaDriverFromPciRom,
178 EfiUgaDriverFromSystem,
180} EFI_DRIVER_HANOFF_ENUM;
183 EFI_DRIVER_HANOFF_ENUM Type;
EFI_STATUS(EFIAPI * EFI_UGA_IO_PROTOCOL_DELETE_DEVICE)(IN EFI_UGA_IO_PROTOCOL *This, IN UGA_DEVICE *Device)
UGA_STATUS(EFIAPI * PUGA_FW_SERVICE_DISPATCH)(IN PUGA_DEVICE pDevice, IN OUT PUGA_IO_REQUEST pIoRequest)
EFI_STATUS(EFIAPI * EFI_UGA_IO_PROTOCOL_CREATE_DEVICE)(IN EFI_UGA_IO_PROTOCOL *This, IN UGA_DEVICE *ParentDevice, IN UGA_DEVICE_DATA *DeviceData, IN VOID *RunTimeContext, OUT UGA_DEVICE **Device)