xref: /freebsd/stand/efi/include/Protocol/EdidActive.h (revision f7c32ed617858bcd22f8d1b03199099d50125721)
1 /* $FreeBSD$ */
2 /** @file
3   EDID Active Protocol from the UEFI 2.0 specification.
4 
5   Placed on the video output device child handle that is actively displaying output.
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_ACTIVE_H__
19 #define __EDID_ACTIVE_H__
20 
21 #define EFI_EDID_ACTIVE_PROTOCOL_GUID \
22   { \
23     0xbd8c1056, 0x9f36, 0x44ec, {0x92, 0xa8, 0xa6, 0x33, 0x7f, 0x81, 0x79, 0x86 } \
24   }
25 
26 ///
27 /// This protocol contains the EDID information for an active video output device. This is either the
28 /// EDID information retrieved from the EFI_EDID_OVERRIDE_PROTOCOL if an override is
29 /// available, or an identical copy of the EDID information from the
30 /// EFI_EDID_DISCOVERED_PROTOCOL if no overrides are available.
31 ///
32 typedef struct {
33   ///
34   /// The size, in bytes, of the Edid buffer. 0 if no EDID information
35   /// is available from the video output device. Otherwise, it must be a
36   /// minimum of 128 bytes.
37   ///
38   UINT32   SizeOfEdid;
39 
40   ///
41   /// A pointer to a read-only array of bytes that contains the EDID
42   /// information for an active video output device. This pointer is
43   /// NULL if no EDID information is available for the video output
44   /// device. The minimum size of a valid Edid buffer is 128 bytes.
45   /// EDID information is defined in the E-EDID EEPROM
46   /// specification published by VESA (www.vesa.org).
47   ///
48   UINT8    *Edid;
49 } EFI_EDID_ACTIVE_PROTOCOL;
50 
51 extern EFI_GUID gEfiEdidActiveProtocolGuid;
52 
53 #endif
54