1 /** @file
2   EDID Discovered Protocol from the UEFI 2.0 specification.
3 
4   This protocol is placed on the video output device child handle. It represents
5   the EDID information being used for the output device represented by the child handle.
6 
7   Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
8   This program and the accompanying materials
9   are licensed and made available under the terms and conditions of the BSD License
10   which accompanies this distribution.  The full text of the license may be found at
11   http://opensource.org/licenses/bsd-license.php
12 
13   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
14   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
15 
16 **/
17 
18 #ifndef __EDID_DISCOVERED_H__
19 #define __EDID_DISCOVERED_H__
20 
21 #define EFI_EDID_DISCOVERED_PROTOCOL_GUID \
22   { \
23     0x1c0c34f6, 0xd380, 0x41fa, {0xa0, 0x49, 0x8a, 0xd0, 0x6c, 0x1a, 0x66, 0xaa } \
24   }
25 
26 ///
27 /// This protocol contains the EDID information retrieved from a video output device.
28 ///
29 typedef struct {
30   ///
31   /// The size, in bytes, of the Edid buffer. 0 if no EDID information
32   /// is available from the video output device. Otherwise, it must be a
33   /// minimum of 128 bytes.
34   ///
35   UINT32   SizeOfEdid;
36 
37   ///
38   /// A pointer to a read-only array of bytes that contains the EDID
39   /// information for an active video output device. This pointer is
40   /// NULL if no EDID information is available for the video output
41   /// device. The minimum size of a valid Edid buffer is 128 bytes.
42   /// EDID information is defined in the E-EDID EEPROM
43   /// specification published by VESA (www.vesa.org).
44   ///
45   UINT8    *Edid;
46 } EFI_EDID_DISCOVERED_PROTOCOL;
47 
48 extern EFI_GUID gEfiEdidDiscoveredProtocolGuid;
49 
50 #endif
51