summaryrefslogtreecommitdiffstats
path: root/src/interface/efi/efiprefix.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/interface/efi/efiprefix.c')
-rw-r--r--src/interface/efi/efiprefix.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/interface/efi/efiprefix.c b/src/interface/efi/efiprefix.c
index 18b931e6..de3572c7 100644
--- a/src/interface/efi/efiprefix.c
+++ b/src/interface/efi/efiprefix.c
@@ -27,6 +27,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
#include <ipxe/efi/efi_snp.h>
#include <ipxe/efi/efi_autoboot.h>
#include <ipxe/efi/efi_watchdog.h>
+#include <ipxe/efi/efi_blacklist.h>
/**
* EFI entry point
@@ -75,6 +76,10 @@ EFI_STATUS EFIAPI _efi_start ( EFI_HANDLE image_handle,
*/
static int efi_probe ( struct root_device *rootdev __unused ) {
+ /* Unloaded any blacklisted drivers */
+ efi_unload_blacklist();
+
+ /* Connect our drivers */
return efi_driver_connect_all();
}
@@ -85,6 +90,7 @@ static int efi_probe ( struct root_device *rootdev __unused ) {
*/
static void efi_remove ( struct root_device *rootdev __unused ) {
+ /* Disconnect our drivers */
efi_driver_disconnect_all();
}