ca987d4641
Sponsored by: Netflix
122 lines
2.8 KiB
C
122 lines
2.8 KiB
C
/* $FreeBSD$ */
|
|
/*++
|
|
|
|
Copyright (c) 1999 - 2002 Intel Corporation. All rights reserved
|
|
This software and associated documentation (if any) is furnished
|
|
under a license and may only be used or copied in accordance
|
|
with the terms of the license. Except as permitted by such
|
|
license, no part of this software or documentation may be
|
|
reproduced, stored in a retrieval system, or transmitted in any
|
|
form or by any means without the express written consent of
|
|
Intel Corporation.
|
|
|
|
Module Name:
|
|
|
|
efigop.h
|
|
|
|
Abstract:
|
|
Info about framebuffers
|
|
|
|
|
|
|
|
|
|
Revision History
|
|
|
|
--*/
|
|
|
|
#ifndef _EFIGOP_H
|
|
#define _EFIGOP_H
|
|
|
|
#define EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID \
|
|
{ 0x9042a9de, 0x23dc, 0x4a38, {0x96, 0xfb, 0x7a, 0xde, 0xd0, 0x80, 0x51, 0x6a} }
|
|
|
|
INTERFACE_DECL(_EFI_GRAPHICS_OUTPUT);
|
|
|
|
typedef struct {
|
|
UINT32 RedMask;
|
|
UINT32 GreenMask;
|
|
UINT32 BlueMask;
|
|
UINT32 ReservedMask;
|
|
} EFI_PIXEL_BITMASK;
|
|
|
|
typedef enum {
|
|
PixelRedGreenBlueReserved8BitPerColor,
|
|
PixelBlueGreenRedReserved8BitPerColor,
|
|
PixelBitMask,
|
|
PixelBltOnly,
|
|
PixelFormatMax,
|
|
} EFI_GRAPHICS_PIXEL_FORMAT;
|
|
|
|
typedef struct {
|
|
UINT32 Version;
|
|
UINT32 HorizontalResolution;
|
|
UINT32 VerticalResolution;
|
|
EFI_GRAPHICS_PIXEL_FORMAT PixelFormat;
|
|
EFI_PIXEL_BITMASK PixelInformation;
|
|
UINT32 PixelsPerScanLine;
|
|
} EFI_GRAPHICS_OUTPUT_MODE_INFORMATION;
|
|
|
|
typedef struct {
|
|
UINT32 MaxMode;
|
|
UINT32 Mode;
|
|
EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *Info;
|
|
UINTN SizeOfInfo;
|
|
EFI_PHYSICAL_ADDRESS FrameBufferBase;
|
|
UINTN FrameBufferSize;
|
|
} EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE;
|
|
|
|
typedef
|
|
EFI_STATUS
|
|
(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE) (
|
|
IN struct _EFI_GRAPHICS_OUTPUT *This,
|
|
IN UINT32 ModeNumber,
|
|
OUT UINTN *SizeOfInfo,
|
|
OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **Info
|
|
);
|
|
|
|
typedef
|
|
EFI_STATUS
|
|
(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE) (
|
|
IN struct _EFI_GRAPHICS_OUTPUT *This,
|
|
IN UINT32 ModeNumber
|
|
);
|
|
|
|
typedef struct {
|
|
UINT8 Blue;
|
|
UINT8 Green;
|
|
UINT8 Red;
|
|
UINT8 Reserved;
|
|
} EFI_GRAPHICS_OUTPUT_BLT_PIXEL;
|
|
|
|
typedef enum {
|
|
EfiBltVideoFill,
|
|
EfiBltVideoToBltBuffer,
|
|
EfiBltBufferToVideo,
|
|
EfiBltVideoToVideo,
|
|
EfiGraphcisOutputBltOperationMax,
|
|
} EFI_GRAPHICS_OUTPUT_BLT_OPERATION;
|
|
|
|
typedef
|
|
EFI_STATUS
|
|
(EFIAPI *EFI_GRAPHICS_OUTPUT_PROTOCOL_BLT) (
|
|
IN struct _EFI_GRAPHICS_OUTPUT *This,
|
|
IN OUT EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer,
|
|
IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation,
|
|
IN UINTN SourceX,
|
|
IN UINTN SourceY,
|
|
IN UINTN DestinationX,
|
|
IN UINTN DestinationY,
|
|
IN UINTN Width,
|
|
IN UINTN Height,
|
|
IN UINTN Delta
|
|
);
|
|
|
|
typedef struct _EFI_GRAPHICS_OUTPUT {
|
|
EFI_GRAPHICS_OUTPUT_PROTOCOL_QUERY_MODE QueryMode;
|
|
EFI_GRAPHICS_OUTPUT_PROTOCOL_SET_MODE SetMode;
|
|
EFI_GRAPHICS_OUTPUT_PROTOCOL_BLT Blt;
|
|
EFI_GRAPHICS_OUTPUT_PROTOCOL_MODE *Mode;
|
|
} EFI_GRAPHICS_OUTPUT;
|
|
|
|
#endif /* _EFIGOP_H */
|