]> git.sur5r.net Git - u-boot/blobdiff - include/efi_loader.h
efi_loader: use __always_inline for pixel conversion
[u-boot] / include / efi_loader.h
index 1a670586b920dafd228b9d8645d83ed634bb6121..0df482ee217cdd6b36cfb3a81f237e501315c514 100644 (file)
@@ -96,6 +96,16 @@ extern const efi_guid_t efi_guid_console_control;
 extern const efi_guid_t efi_guid_device_path;
 /* GUID of the EFI_DRIVER_BINDING_PROTOCOL */
 extern const efi_guid_t efi_guid_driver_binding_protocol;
+/* event group ExitBootServices() invoked */
+extern const efi_guid_t efi_guid_event_group_exit_boot_services;
+/* event group SetVirtualAddressMap() invoked */
+extern const efi_guid_t efi_guid_event_group_virtual_address_change;
+/* event group memory map changed */
+extern const efi_guid_t efi_guid_event_group_memory_map_change;
+/* event group boot manager about to boot */
+extern const efi_guid_t efi_guid_event_group_ready_to_boot;
+/* event group ResetSystem() invoked (before ExitBootServices) */
+extern const efi_guid_t efi_guid_event_group_reset_system;
 /* GUID of the device tree table */
 extern const efi_guid_t efi_guid_fdt;
 extern const efi_guid_t efi_guid_loaded_image;
@@ -155,6 +165,7 @@ struct efi_object {
  * @notify_tpl:                Task priority level of notifications
  * @nofify_function:   Function to call when the event is triggered
  * @notify_context:    Data to be passed to the notify function
+ * @group:             Event group
  * @trigger_time:      Period of the timer
  * @trigger_next:      Next time to trigger the timer
  * @trigger_type:      Type of timer, see efi_set_timer
@@ -167,6 +178,7 @@ struct efi_event {
        efi_uintn_t notify_tpl;
        void (EFIAPI *notify_function)(struct efi_event *event, void *context);
        void *notify_context;
+       const efi_guid_t *group;
        u64 trigger_next;
        u64 trigger_time;
        enum efi_timer_delay trigger_type;
@@ -176,6 +188,8 @@ struct efi_event {
 
 /* This list contains all UEFI objects we know of */
 extern struct list_head efi_obj_list;
+/* List of all events */
+extern struct list_head efi_events;
 
 /* Called by bootefi to make console interface available */
 int efi_console_register(void);
@@ -242,7 +256,8 @@ efi_status_t efi_create_event(uint32_t type, efi_uintn_t notify_tpl,
                              void (EFIAPI *notify_function) (
                                        struct efi_event *event,
                                        void *context),
-                             void *notify_context, struct efi_event **event);
+                             void *notify_context, efi_guid_t *group,
+                             struct efi_event **event);
 /* Call this to set a timer */
 efi_status_t efi_set_timer(struct efi_event *event, enum efi_timer_delay type,
                           uint64_t trigger_time);