mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-17 12:41:32 +00:00
efi_loader: run CreateEvent() notify function based on flags
The UEFI specification states that the tpl, function and context arguments are to be ignored if neither EVT_NOTIFY_WAIT or EVT_NOTIFY_SIGNAL are specified. This matches observed behaviour with an AMI EDK2 based UEFI implementation. Skip calling the notify function if neither flag is present. Signed-off-by: Jonathan Gray <jsg@jsg.id.au> Acked-By: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
85a6e9b3c9
commit
37a980b3fa
2 changed files with 6 additions and 1 deletions
|
@ -28,6 +28,9 @@ enum efi_event_type {
|
|||
EFI_TIMER_RELATIVE = 2
|
||||
};
|
||||
|
||||
#define EVT_NOTIFY_WAIT 0x00000100
|
||||
#define EVT_NOTIFY_SIGNAL 0x00000200
|
||||
|
||||
/* EFI Boot Services table */
|
||||
struct efi_boot_services {
|
||||
struct efi_table_hdr hdr;
|
||||
|
|
|
@ -210,7 +210,9 @@ void efi_timer_check(void)
|
|||
/* Triggering! */
|
||||
if (efi_event.trigger_type == EFI_TIMER_PERIODIC)
|
||||
efi_event.trigger_next += efi_event.trigger_time / 10;
|
||||
efi_event.notify_function(&efi_event, efi_event.notify_context);
|
||||
if (efi_event.type & (EVT_NOTIFY_WAIT | EVT_NOTIFY_SIGNAL))
|
||||
efi_event.notify_function(&efi_event,
|
||||
efi_event.notify_context);
|
||||
}
|
||||
|
||||
WATCHDOG_RESET();
|
||||
|
|
Loading…
Add table
Reference in a new issue