Home | History | Annotate | Download | only in Protocol
      1 /*++
      2 
      3 Copyright (c)  1999  - 2014, Intel Corporation. All rights reserved
      4 
      5   This program and the accompanying materials are licensed and made available under
      7   the terms and conditions of the BSD License that accompanies this distribution.
      9   The full text of the license may be found at
     11   http://opensource.org/licenses/bsd-license.php.
     13 
     15   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     17   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     19 
     21 
     23 --*/
     24 
     25 /** @file
     26 **/
     27 
     28 #ifndef _PLATFORM_GOP_POLICY_PROTOCOL_H_
     29 #define _PLATFORM_GOP_POLICY_PROTOCOL_H_
     30 
     31 #define EFI_PLATFORM_GOP_POLICY_PROTOCOL_GUID \
     32   { 0xec2e931b, 0x3281, 0x48a5, 0x81, 0x7, 0xdf, 0x8a, 0x8b, 0xed, 0x3c, 0x5d }
     33 
     34 #define EFI_BMP_IMAGE_GUID \
     35   { 0x878AC2CC, 0x5343, 0x46F2, 0xB5, 0x63, 0x51, 0xF8, 0x9D, 0xAF, 0x56, 0xBA }
     36 
     37 #define PLATFORM_GOP_POLICY_PROTOCOL_REVISION_01 0x01
     38 #define PLATFORM_GOP_POLICY_PROTOCOL_REVISION_02 x0222
     39 
     40 #pragma pack(1)
     41 
     42 typedef enum {
     43   LidClosed,
     44   LidOpen,
     45   LidStatusMax
     46 } LID_STATUS;
     47 
     48 typedef enum {
     49   Docked,
     50   UnDocked,
     51   DockStatusMax
     52 } DOCK_STATUS;
     53 
     54 typedef
     55 EFI_STATUS
     56 (EFIAPI *GET_PLATFORM_LID_STATUS) (
     57    OUT LID_STATUS *CurrentLidStatus
     58 );
     59 
     60 typedef
     61 EFI_STATUS
     62 (EFIAPI *GET_VBT_DATA) (
     63    OUT EFI_PHYSICAL_ADDRESS *VbtAddress,
     64    OUT UINT32 *VbtSize
     65 );
     66 
     67 #pragma pack()
     68 
     69 typedef struct _PLATFORM_GOP_POLICY_PROTOCOL {
     70   UINT32                             Revision;
     71   GET_PLATFORM_LID_STATUS            GetPlatformLidStatus;
     72   GET_VBT_DATA                       GetVbtData;
     73 } PLATFORM_GOP_POLICY_PROTOCOL;
     74 
     75 //
     76 // Extern the GUID for protocol users.
     77 //
     78 extern EFI_GUID  gPlatformGOPPolicyGuid;
     79 
     80 extern EFI_GUID  gBmpImageGuid;
     81 
     82 #endif
     83