TianoCore EDK2 master
Loading...
Searching...
No Matches
UgaIo.h File Reference

Go to the source code of this file.

Data Structures

struct  UGA_DEVICE_DATA
 
struct  _UGA_DEVICE
 
struct  UGA_IO_REQUEST
 
struct  _EFI_UGA_IO_PROTOCOL
 
struct  EFI_DRIVER_OS_HANDOFF_HEADER
 
struct  EFI_DRIVER_OS_HANDOFF
 

Macros

#define EFI_UGA_IO_PROTOCOL_GUID    { 0x61a4d49e, 0x6f68, 0x4f1b, { 0xb9, 0x22, 0xa8, 0x6e, 0xed, 0xb, 0x7, 0xa2 } }
 

Typedefs

typedef struct _EFI_UGA_IO_PROTOCOL EFI_UGA_IO_PROTOCOL
 
typedef UINT32 UGA_STATUS
 
typedef enum UGA_DEVICE_TYPE * PUGA_DEVICE_TYPE
 
typedef UINT32 UGA_DEVICE_ID
 
typedef UINT32 * PUGA_DEVICE_ID
 
typedef struct UGA_DEVICE_DATAPUGA_DEVICE_DATA
 
typedef struct _UGA_DEVICE UGA_DEVICE
 
typedef struct _UGA_DEVICEPUGA_DEVICE
 
typedef enum UGA_IO_REQUEST_CODE * PUGA_IO_REQUEST_CODE
 
typedef struct UGA_IO_REQUESTPUGA_IO_REQUEST
 
typedef 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)
 
typedef EFI_STATUS(EFIAPI * EFI_UGA_IO_PROTOCOL_DELETE_DEVICE) (IN EFI_UGA_IO_PROTOCOL *This, IN UGA_DEVICE *Device)
 
typedef UGA_STATUS(EFIAPI * PUGA_FW_SERVICE_DISPATCH) (IN PUGA_DEVICE pDevice, IN OUT PUGA_IO_REQUEST pIoRequest)
 

Enumerations

enum  UGA_DEVICE_TYPE {
  UgaDtParentBus = 1 , UgaDtGraphicsController , UgaDtOutputController , UgaDtOutputPort ,
  UgaDtOther
}
 
enum  UGA_IO_REQUEST_CODE {
  UgaIoGetVersion = 1 , UgaIoGetChildDevice , UgaIoStartDevice , UgaIoStopDevice ,
  UgaIoFlushDevice , UgaIoResetDevice , UgaIoGetDeviceState , UgaIoSetDeviceState ,
  UgaIoSetPowerState , UgaIoGetMemoryConfiguration , UgaIoSetVideoMode , UgaIoCopyRectangle ,
  UgaIoGetEdidSegment , UgaIoDeviceChannelOpen , UgaIoDeviceChannelClose , UgaIoDeviceChannelRead ,
  UgaIoDeviceChannelWrite , UgaIoGetPersistentDataSize , UgaIoGetPersistentData , UgaIoSetPersistentData ,
  UgaIoGetDevicePropertySize , UgaIoGetDeviceProperty , UgaIoBtPrivateInterface
}
 
enum  EFI_DRIVER_HANOFF_ENUM { EfiUgaDriverFromPciRom , EfiUgaDriverFromSystem , EfiDriverHandoffMax }
 

Variables

EFI_GUID gEfiUgaIoProtocolGuid
 

Detailed Description

UGA IO protocol from the EFI 1.10 specification.

Abstraction of a very simple graphics device.

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file UgaIo.h.

Macro Definition Documentation

◆ EFI_UGA_IO_PROTOCOL_GUID

#define EFI_UGA_IO_PROTOCOL_GUID    { 0x61a4d49e, 0x6f68, 0x4f1b, { 0xb9, 0x22, 0xa8, 0x6e, 0xed, 0xb, 0x7, 0xa2 } }

Definition at line 14 of file UgaIo.h.

Typedef Documentation

◆ EFI_UGA_IO_PROTOCOL

Definition at line 17 of file UgaIo.h.

◆ EFI_UGA_IO_PROTOCOL_CREATE_DEVICE

typedef 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)

Dynamically allocate storage for a child UGA_DEVICE.

Parameters
[in]ThisThe EFI_UGA_IO_PROTOCOL instance.
[in]ParentDeviceParentDevice specifies a pointer to the parent device of Device.
[in]DeviceDataA pointer to UGA_DEVICE_DATA returned from a call to DispatchService() with a UGA_DEVICE of Parent and an IoRequest of type UgaIoGetChildDevice.
[in]RunTimeContextContext to associate with Device.
[out]DeviceThe Device returns a dynamically allocated child UGA_DEVICE object for ParentDevice. The caller is responsible for deleting Device.
Return values
EFI_SUCCESSDevice was returned.
EFI_INVALID_PARAMETEROne of the arguments was not valid.
EFI_DEVICE_ERRORThe device had an error and could not complete the request.

Definition at line 101 of file UgaIo.h.

◆ EFI_UGA_IO_PROTOCOL_DELETE_DEVICE

typedef EFI_STATUS(EFIAPI * EFI_UGA_IO_PROTOCOL_DELETE_DEVICE) (IN EFI_UGA_IO_PROTOCOL *This, IN UGA_DEVICE *Device)

Delete a dynamically allocated child UGA_DEVICE object that was allocated via CreateDevice().

Parameters
[in]ThisThe EFI_UGA_IO_PROTOCOL instance. Type EFI_UGA_IO_PROTOCOL is defined in Section 10.7.
[in]DeviceThe Device points to a UGA_DEVICE object that was dynamically allocated via a CreateDevice() call.
Return values
EFI_SUCCESSDevice was returned.
EFI_INVALID_PARAMETERThe Device was not allocated via CreateDevice().

Definition at line 124 of file UgaIo.h.

◆ PUGA_DEVICE_ID

typedef UINT32 * PUGA_DEVICE_ID

Definition at line 29 of file UgaIo.h.

◆ PUGA_FW_SERVICE_DISPATCH

typedef UGA_STATUS(EFIAPI * PUGA_FW_SERVICE_DISPATCH) (IN PUGA_DEVICE pDevice, IN OUT PUGA_IO_REQUEST pIoRequest)

This is the main UGA service dispatch routine for all UGA_IO_REQUEST s.

Parameters
pDevicepDevice specifies a pointer to a device object associated with a device enumerated by a pIoRequest->ioRequestCode of type UgaIoGetChildDevice. The root device for the EFI_UGA_IO_PROTOCOL is represented by pDevice being set to NULL.
pIoRequestpIoRequest points to a caller allocated buffer that contains data defined by pIoRequest->ioRequestCode. See Related Definitions for a definition of UGA_IO_REQUEST_CODE s and their associated data structures.
Returns
UGA_STATUS

Definition at line 147 of file UgaIo.h.

◆ UGA_DEVICE_ID

typedef UINT32 UGA_DEVICE_ID

Definition at line 29 of file UgaIo.h.

◆ UGA_STATUS

typedef UINT32 UGA_STATUS

Definition at line 19 of file UgaIo.h.

Enumeration Type Documentation

◆ EFI_DRIVER_HANOFF_ENUM

enum EFI_DRIVER_HANOFF_ENUM

Definition at line 176 of file UgaIo.h.

◆ UGA_DEVICE_TYPE

enum UGA_DEVICE_TYPE

Definition at line 21 of file UgaIo.h.

◆ UGA_IO_REQUEST_CODE

enum UGA_IO_REQUEST_CODE

Definition at line 48 of file UgaIo.h.