xref: /freebsd/sys/contrib/edk2/Include/Protocol/EdidDiscovered.h (revision f439973d6726c3be929c8fb3b1545b8b1744abc3)
1*f439973dSWarner Losh /** @file
2*f439973dSWarner Losh   EDID Discovered Protocol from the UEFI 2.0 specification.
3*f439973dSWarner Losh 
4*f439973dSWarner Losh   This protocol is placed on the video output device child handle. It represents
5*f439973dSWarner Losh   the EDID information being used for the output device represented by the child handle.
6*f439973dSWarner Losh 
7*f439973dSWarner Losh   Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
8*f439973dSWarner Losh   SPDX-License-Identifier: BSD-2-Clause-Patent
9*f439973dSWarner Losh 
10*f439973dSWarner Losh **/
11*f439973dSWarner Losh 
12*f439973dSWarner Losh #ifndef __EDID_DISCOVERED_H__
13*f439973dSWarner Losh #define __EDID_DISCOVERED_H__
14*f439973dSWarner Losh 
15*f439973dSWarner Losh #define EFI_EDID_DISCOVERED_PROTOCOL_GUID \
16*f439973dSWarner Losh   { \
17*f439973dSWarner Losh     0x1c0c34f6, 0xd380, 0x41fa, {0xa0, 0x49, 0x8a, 0xd0, 0x6c, 0x1a, 0x66, 0xaa } \
18*f439973dSWarner Losh   }
19*f439973dSWarner Losh 
20*f439973dSWarner Losh ///
21*f439973dSWarner Losh /// This protocol contains the EDID information retrieved from a video output device.
22*f439973dSWarner Losh ///
23*f439973dSWarner Losh typedef struct {
24*f439973dSWarner Losh   ///
25*f439973dSWarner Losh   /// The size, in bytes, of the Edid buffer. 0 if no EDID information
26*f439973dSWarner Losh   /// is available from the video output device. Otherwise, it must be a
27*f439973dSWarner Losh   /// minimum of 128 bytes.
28*f439973dSWarner Losh   ///
29*f439973dSWarner Losh   UINT32    SizeOfEdid;
30*f439973dSWarner Losh 
31*f439973dSWarner Losh   ///
32*f439973dSWarner Losh   /// A pointer to a read-only array of bytes that contains the EDID
33*f439973dSWarner Losh   /// information for an active video output device. This pointer is
34*f439973dSWarner Losh   /// NULL if no EDID information is available for the video output
35*f439973dSWarner Losh   /// device. The minimum size of a valid Edid buffer is 128 bytes.
36*f439973dSWarner Losh   /// EDID information is defined in the E-EDID EEPROM
37*f439973dSWarner Losh   /// specification published by VESA (www.vesa.org).
38*f439973dSWarner Losh   ///
39*f439973dSWarner Losh   UINT8    *Edid;
40*f439973dSWarner Losh } EFI_EDID_DISCOVERED_PROTOCOL;
41*f439973dSWarner Losh 
42*f439973dSWarner Losh extern EFI_GUID  gEfiEdidDiscoveredProtocolGuid;
43*f439973dSWarner Losh 
44*f439973dSWarner Losh #endif
45