diff options
author | Heinrich Schuchardt <xypron.glpk@gmx.de> | 2019-05-04 17:27:54 +0200 |
---|---|---|
committer | Heinrich Schuchardt <xypron.glpk@gmx.de> | 2019-05-07 21:10:04 +0200 |
commit | ab15d4149ee950820f65e5a5235b1e6b745fc678 (patch) | |
tree | 68c5d3fa39f71359d73a48116df82840fda6dd89 /include/efi_loader.h | |
parent | 3626e539903f05565e0f6b54fae7f19da7a0bf34 (diff) | |
download | u-boot-ab15d4149ee950820f65e5a5235b1e6b745fc678.tar.gz u-boot-ab15d4149ee950820f65e5a5235b1e6b745fc678.tar.xz u-boot-ab15d4149ee950820f65e5a5235b1e6b745fc678.zip |
efi_loader: implement RegisterProtocolNotify()
The RegisterProtocolNotify() boot service registers an event to be
notified upon the installation of a protocol interface with the
specified GUID.
Add the missing implementation.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Diffstat (limited to 'include/efi_loader.h')
-rw-r--r-- | include/efi_loader.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/include/efi_loader.h b/include/efi_loader.h index 4e4cffa799..d3a1d4c465 100644 --- a/include/efi_loader.h +++ b/include/efi_loader.h @@ -271,6 +271,25 @@ extern struct list_head efi_obj_list; /* List of all events */ extern struct list_head efi_events; +/** + * efi_register_notify_event - event registered by RegisterProtocolNotify() + * + * The address of this structure serves as registration value. + * + * @link: link to list of all registered events + * @event: registered event. The same event may registered for + * multiple GUIDs. + * @protocol: protocol for which the event is registered + */ +struct efi_register_notify_event { + struct list_head link; + struct efi_event *event; + efi_guid_t protocol; +}; + +/* List of all events registered by RegisterProtocolNotify() */ +extern struct list_head efi_register_notify_events; + /* Initialize efi execution environment */ efi_status_t efi_init_obj_list(void); /* Called by bootefi to initialize root node */ |