]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
efi: expose efivar generic ops register function
authorMasahisa Kojima <masahisa.kojima@linaro.org>
Tue, 7 Nov 2023 05:40:52 +0000 (14:40 +0900)
committerArd Biesheuvel <ardb@kernel.org>
Mon, 11 Dec 2023 10:19:18 +0000 (11:19 +0100)
This is a preparation for supporting efivar operations provided by other
than efi subsystem.  Both register and unregister functions are exposed
so that non-efi subsystem can revert the efi generic operation.

Acked-by: Sumit Garg <sumit.garg@linaro.org>
Co-developed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
drivers/firmware/efi/efi.c
include/linux/efi.h

index 9d3910d1abe19eb63d26e88ea86e3c669924cf1b..32a67c61c3b84636fccab8d2bd3ad3e3be4f1449 100644 (file)
@@ -231,6 +231,18 @@ static void generic_ops_unregister(void)
        efivars_unregister(&generic_efivars);
 }
 
+void efivars_generic_ops_register(void)
+{
+       generic_ops_register();
+}
+EXPORT_SYMBOL_GPL(efivars_generic_ops_register);
+
+void efivars_generic_ops_unregister(void)
+{
+       generic_ops_unregister();
+}
+EXPORT_SYMBOL_GPL(efivars_generic_ops_unregister);
+
 #ifdef CONFIG_EFI_CUSTOM_SSDT_OVERLAYS
 #define EFIVAR_SSDT_NAME_MAX   16UL
 static char efivar_ssdt[EFIVAR_SSDT_NAME_MAX] __initdata;
index 9cc5bf32f6f28097641953c88e6b208bcc0dfb5a..1b2f50efb98cae5d8cd4733b555361906e244e3b 100644 (file)
@@ -1348,4 +1348,7 @@ bool efi_config_table_is_usable(const efi_guid_t *guid, unsigned long table)
 
 umode_t efi_attr_is_visible(struct kobject *kobj, struct attribute *attr, int n);
 
+void efivars_generic_ops_register(void);
+void efivars_generic_ops_unregister(void);
+
 #endif /* _LINUX_EFI_H */