diff options
author | Jan Janssen <medhefgo@web.de> | 2022-10-12 09:39:59 +0200 |
---|---|---|
committer | Jan Janssen <medhefgo@web.de> | 2022-10-12 13:36:22 +0200 |
commit | 1a9874905a900dc7d02bf4ef4c0a87931a5ad75c (patch) | |
tree | 2d4c6b1d5d808d1d50ead013790b737dfbe27db9 /src | |
parent | 5b3e33c26fded99a18852117e9feaf5f78bb7227 (diff) | |
download | systemd-1a9874905a900dc7d02bf4ef4c0a87931a5ad75c.tar.gz |
boot: Always reconnect all drivers
Fixes: #23442
Diffstat (limited to 'src')
-rw-r--r-- | src/boot/efi/boot.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/boot/efi/boot.c b/src/boot/efi/boot.c index 087d6bf434..6b3d29ba3b 100644 --- a/src/boot/efi/boot.c +++ b/src/boot/efi/boot.c @@ -2660,6 +2660,12 @@ EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *sys_table) { /* Uncomment the next line if you need to wait for debugger. */ // debug_break(); + /* The firmware may skip initializing some devices for the sake of a faster boot. This is especially + * true for fastboot enabled firmwares. But this means that things we use like input devices or the + * xbootldr partition may not be available yet. Reconnect all drivers should hopefully make the + * firmware initialize everything we need. */ + (void) reconnect_all_drivers(); + err = BS->OpenProtocol(image, &LoadedImageProtocol, (void **)&loaded_image, |