OpenCorePkg/Include/Apple/Protocol/AppleGraphicsPolicy.h

98 lines
2.5 KiB
C

/*++
Created by HermitCrabs on 26/4/2015.
Copyright 2010-2014 The HermitCrab Labs. All rights reserved.
Module Name:
AppleGraphicsPolicy.h
Abstract:
Revision History
1.0 Initial Version
--*/
#ifndef APPLE_GRAPHICS_POLICY_H
#define APPLE_GRAPHICS_POLICY_H
#define APPLE_GRAPHICS_POLICY_PROTCOL_GUID \
{ 0xA4BB4654, 0x9F72, 0x4BC8, \
{ 0x93, 0xEB, 0x65, 0x9F, 0xD8, 0x70, 0x8B, 0x10 } }
typedef struct APPLE_GRAPHICS_POLICY_PROTOCOL APPLE_GRAPHICS_POLICY_PROTOCOL;
typedef
EFI_STATUS
(EFIAPI *APPLE_GRAPHICS_POLICY_MEMBER_01)(
IN APPLE_GRAPHICS_POLICY_PROTOCOL *This,
VOID *param2
);
typedef
EFI_STATUS
(EFIAPI *APPLE_GRAPHICS_POLICY_MEMBER_02)(
IN APPLE_GRAPHICS_POLICY_PROTOCOL *This,
IN UINT16 VendorId,
IN UINT32 DeviceId,
IN EFI_HANDLE ControllerHandle
);
typedef
EFI_STATUS
(EFIAPI *APPLE_GRAPHICS_POLICY_MEMBER_03)(
IN APPLE_GRAPHICS_POLICY_PROTOCOL *This
);
typedef
EFI_STATUS
(EFIAPI *APPLE_GRAPHICS_POLICY_MEMBER_04)(
IN APPLE_GRAPHICS_POLICY_PROTOCOL *This,
IN EFI_GUID *Guid,
IN VOID *Buffer,
IN UINT64 *BufferSize
);
typedef
EFI_STATUS
(EFIAPI *APPLE_GRAPHICS_POLICY_MEMBER_05)(
IN APPLE_GRAPHICS_POLICY_PROTOCOL *This,
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath,
IN CHAR16 *ValueBuffer,
IN CHAR16 *Variable,
IN VOID *OutputBuffer,
IN UINTN OutputBufferLength
);
typedef
EFI_STATUS
(EFIAPI *APPLE_GRAPHICS_POLICY_MEMBER_06)(
IN APPLE_GRAPHICS_POLICY_PROTOCOL *This
);
typedef
EFI_STATUS
(EFIAPI *APPLE_GRAPHICS_POLICY_MEMBER_07)(
IN APPLE_GRAPHICS_POLICY_PROTOCOL *This,
IN UINT32 Function,
IN VOID *Buffer,
IN UINT64 *BufferSize
);
struct APPLE_GRAPHICS_POLICY_PROTOCOL {
UINTN Revision;
APPLE_GRAPHICS_POLICY_MEMBER_01 Unknown_01;
APPLE_GRAPHICS_POLICY_MEMBER_02 Unknown_02;
APPLE_GRAPHICS_POLICY_MEMBER_03 Unknown_03;
APPLE_GRAPHICS_POLICY_MEMBER_04 Unknown_04;
APPLE_GRAPHICS_POLICY_MEMBER_05 Unknown_05;
APPLE_GRAPHICS_POLICY_MEMBER_06 Unknown_06;
APPLE_GRAPHICS_POLICY_MEMBER_07 Unknown_07;
};
extern EFI_GUID gAppleGraphicsPolicyProtocolGuid;
#endif // APPLE_GRAPHICS_POLICY_H