1/** @file
2  EDID Active Protocol from the UEFI 2.0 specification.
3
4  Placed on the video output device child handle that is actively displaying output.
5
6  Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
7  This program and the accompanying materials
8  are licensed and made available under the terms and conditions of the BSD License
9  which accompanies this distribution.  The full text of the license may be found at
10  http://opensource.org/licenses/bsd-license.php
11
12  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14
15**/
16
17#ifndef __EDID_ACTIVE_H__
18#define __EDID_ACTIVE_H__
19
20#define EFI_EDID_ACTIVE_PROTOCOL_GUID \
21  { \
22    0xbd8c1056, 0x9f36, 0x44ec, {0x92, 0xa8, 0xa6, 0x33, 0x7f, 0x81, 0x79, 0x86 } \
23  }
24
25///
26/// This protocol contains the EDID information for an active video output device. This is either the
27/// EDID information retrieved from the EFI_EDID_OVERRIDE_PROTOCOL if an override is
28/// available, or an identical copy of the EDID information from the
29/// EFI_EDID_DISCOVERED_PROTOCOL if no overrides are available.
30///
31typedef struct {
32  ///
33  /// The size, in bytes, of the Edid buffer. 0 if no EDID information
34  /// is available from the video output device. Otherwise, it must be a
35  /// minimum of 128 bytes.
36  ///
37  UINT32   SizeOfEdid;
38
39  ///
40  /// A pointer to a read-only array of bytes that contains the EDID
41  /// information for an active video output device. This pointer is
42  /// NULL if no EDID information is available for the video output
43  /// device. The minimum size of a valid Edid buffer is 128 bytes.
44  /// EDID information is defined in the E-EDID EEPROM
45  /// specification published by VESA (www.vesa.org).
46  ///
47  UINT8    *Edid;
48} EFI_EDID_ACTIVE_PROTOCOL;
49
50extern EFI_GUID gEfiEdidActiveProtocolGuid;
51
52#endif
53