xref: /freebsd/sys/contrib/edk2/Include/Protocol/EdidActive.h (revision f439973d6726c3be929c8fb3b1545b8b1744abc3)
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 - 2018, Intel Corporation. All rights reserved.<BR>
7   SPDX-License-Identifier: BSD-2-Clause-Patent
8 
9 **/
10 
11 #ifndef __EDID_ACTIVE_H__
12 #define __EDID_ACTIVE_H__
13 
14 #define EFI_EDID_ACTIVE_PROTOCOL_GUID \
15   { \
16     0xbd8c1056, 0x9f36, 0x44ec, {0x92, 0xa8, 0xa6, 0x33, 0x7f, 0x81, 0x79, 0x86 } \
17   }
18 
19 ///
20 /// This protocol contains the EDID information for an active video output device. This is either the
21 /// EDID information retrieved from the EFI_EDID_OVERRIDE_PROTOCOL if an override is
22 /// available, or an identical copy of the EDID information from the
23 /// EFI_EDID_DISCOVERED_PROTOCOL if no overrides are available.
24 ///
25 typedef struct {
26   ///
27   /// The size, in bytes, of the Edid buffer. 0 if no EDID information
28   /// is available from the video output device. Otherwise, it must be a
29   /// minimum of 128 bytes.
30   ///
31   UINT32    SizeOfEdid;
32 
33   ///
34   /// A pointer to a read-only array of bytes that contains the EDID
35   /// information for an active video output device. This pointer is
36   /// NULL if no EDID information is available for the video output
37   /// device. The minimum size of a valid Edid buffer is 128 bytes.
38   /// EDID information is defined in the E-EDID EEPROM
39   /// specification published by VESA (www.vesa.org).
40   ///
41   UINT8    *Edid;
42 } EFI_EDID_ACTIVE_PROTOCOL;
43 
44 extern EFI_GUID  gEfiEdidActiveProtocolGuid;
45 
46 #endif
47