1 /**
2  * @file lv_uefi_display.h
3  *
4  */
5 
6 #ifndef __LV_UEFI_DISPLAY_H__
7 #define __LV_UEFI_DISPLAY_H__
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 /*********************
14  *      INCLUDES
15  *********************/
16 
17 #include "../../display/lv_display.h"
18 
19 #if LV_USE_UEFI
20 
21 #include "lv_uefi.h"
22 
23 /*********************
24  *      DEFINES
25  *********************/
26 
27 /**********************
28  *      TYPEDEFS
29  **********************/
30 
31 /**********************
32  * GLOBAL PROTOTYPES
33  **********************/
34 
35 /**
36  * @brief Create a LVGL display object.
37  * @param handle The handle on which an instance of the EFI_GRAPHICS_OUTPUT_PROTOCOL protocol is installed.
38  * @return The created LVGL display object.
39 */
40 lv_display_t * lv_uefi_display_create(void * handle);
41 
42 /**
43  * @brief Try to find the active display handle.
44  * @return The handle or NULL if not found.
45  * @remark The active display need interfaces for EFI_GRAPHICS_OUTPUT_PROTOCOL and EFI_EDID_ACTIVE_PROTOCOL
46 */
47 void * lv_uefi_display_get_active(void);
48 
49 /**
50  * @brief Try to find any display handle.
51  * @return The handle or NULL if not found.
52 */
53 void * lv_uefi_display_get_any(void);
54 
55 /**********************
56  *      MACROS
57  **********************/
58 
59 #endif
60 
61 #ifdef __cplusplus
62 }
63 #endif
64 
65 #endif //__LV_UEFI_DISPLAY_H__