aboutsummaryrefslogtreecommitdiff
path: root/include/efi_driver.h
diff options
context:
space:
mode:
authorHeinrich Schuchardt2022-10-05 11:28:47 +0200
committerHeinrich Schuchardt2022-10-06 22:54:58 +0200
commit8f8fe1d458664aaa15fa82de78dfdb0eca74b2ca (patch)
tree4ce4f091b1cfe1c427de7d32f6e1e406d5f52d41 /include/efi_driver.h
parentec4f675f9ebec2535f2cd050aed7f9c106a5bee9 (diff)
efi_driver: add init function to EFI block driver
For handling added and removed block devices we need to register events which has to be done when the driver is installed. This patch only creates an empty init function that will be filled with code later on. The function needs to be called before any EFI block devices are used. Move the efi_driver_init() call to early init. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Diffstat (limited to 'include/efi_driver.h')
-rw-r--r--include/efi_driver.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/efi_driver.h b/include/efi_driver.h
index 71e0d3194ea..63a95e4cf80 100644
--- a/include/efi_driver.h
+++ b/include/efi_driver.h
@@ -32,12 +32,15 @@ struct efi_driver_binding_extended_protocol {
* EFI_DRIVER_BINDING_PROTOCOL.
* @child_protocol: Protocol supported by the child handles generated by
* the EFI driver.
+ * @init: Function called by the EFI uclass after installing the
+ * driver binding protocol.
* @bind: Function called by the EFI uclass to attach the
* driver to EFI driver to a handle.
*/
struct efi_driver_ops {
const efi_guid_t *protocol;
const efi_guid_t *child_protocol;
+ efi_status_t (*init)(struct efi_driver_binding_extended_protocol *this);
efi_status_t (*bind)(struct efi_driver_binding_extended_protocol *this,
efi_handle_t handle, void *interface);
};