From: srs5694 Date: Fri, 9 May 2014 14:06:58 +0000 (-0400) Subject: Fixed a bug that cause Tianocore builds to not mount filesystems. X-Git-Url: https://code.delx.au/refind/commitdiff_plain/1fd8d428b85accc2b1825b60d187e839932766d9 Fixed a bug that cause Tianocore builds to not mount filesystems. --- diff --git a/EfiLib/GenericBdsLib.h b/EfiLib/GenericBdsLib.h index d4958c4..be4325b 100644 --- a/EfiLib/GenericBdsLib.h +++ b/EfiLib/GenericBdsLib.h @@ -230,23 +230,6 @@ BdsLibBuildOptionFromShell ( IN OUT LIST_ENTRY *BdsBootOptionList ); -// // -// // Bds misc lib functions -// // -// /** -// Get boot mode by looking up the configuration table and parsing the HOB list. -// -// @param BootMode The boot mode from PEI handoff HOB. -// -// @retval EFI_SUCCESS Successfully got boot mode. -// -// **/ -// EFI_STATUS -// EFIAPI -// BdsLibGetBootMode ( -// OUT EFI_BOOT_MODE *BootMode -// ); - /** The function will go through the driver option link list, and then load and start @@ -363,6 +346,19 @@ BdsLibConnectDevicePath ( ); +// +// Bds connect and disconnect driver lib funcions +// +/** + This function connects all system drivers with the corresponding controllers. + + **/ +VOID +EFIAPI +BdsLibConnectAllDriversToAllControllers ( + VOID +); + /** This function will connect console device based on the console device variable ConIn, ConOut and ErrOut. diff --git a/EfiLib/Make.tiano b/EfiLib/Make.tiano index 03b2e0d..798ce3c 100644 --- a/EfiLib/Make.tiano +++ b/EfiLib/Make.tiano @@ -5,7 +5,7 @@ include ../Make.tiano -SOURCE_NAMES = legacy BmLib DevicePath BdsHelper BdsTianoCore +SOURCE_NAMES = legacy BmLib BdsConnect DevicePath BdsHelper BdsTianoCore OBJS = $(SOURCE_NAMES:=.obj) #DRIVERNAME = ext2 #BUILDME = $(DRIVERNAME)_$(FILENAME_CODE).efi diff --git a/EfiLib/legacy.c b/EfiLib/legacy.c index 5824297..4541b31 100644 --- a/EfiLib/legacy.c +++ b/EfiLib/legacy.c @@ -982,7 +982,7 @@ BdsDeleteAllInvalidLegacyBootOptions ( // // Skip Non-Legacy boot option - // + // if (!BdsIsLegacyBootOption (BootOptionVar, &BbsEntry, &BbsIndex)) { if (BootOptionVar!= NULL) { FreePool (BootOptionVar); diff --git a/icons/arrow_left.icns b/icons/arrow_left.icns deleted file mode 100644 index 3bfaa22..0000000 Binary files a/icons/arrow_left.icns and /dev/null differ diff --git a/icons/arrow_right.icns b/icons/arrow_right.icns deleted file mode 100644 index 734ce47..0000000 Binary files a/icons/arrow_right.icns and /dev/null differ diff --git a/icons/boot_linux.icns b/icons/boot_linux.icns deleted file mode 100644 index 609edf7..0000000 Binary files a/icons/boot_linux.icns and /dev/null differ diff --git a/icons/boot_win.icns b/icons/boot_win.icns deleted file mode 100644 index a1cc87d..0000000 Binary files a/icons/boot_win.icns and /dev/null differ diff --git a/icons/func_about.icns b/icons/func_about.icns deleted file mode 100644 index 12559f8..0000000 Binary files a/icons/func_about.icns and /dev/null differ diff --git a/icons/func_exit.icns b/icons/func_exit.icns deleted file mode 100644 index 5b87c44..0000000 Binary files a/icons/func_exit.icns and /dev/null differ diff --git a/icons/func_firmware.icns b/icons/func_firmware.icns deleted file mode 100644 index 098a86d..0000000 Binary files a/icons/func_firmware.icns and /dev/null differ diff --git a/icons/func_reset.icns b/icons/func_reset.icns deleted file mode 100644 index a674542..0000000 Binary files a/icons/func_reset.icns and /dev/null differ diff --git a/icons/func_shutdown.icns b/icons/func_shutdown.icns deleted file mode 100644 index 7aeb3d5..0000000 Binary files a/icons/func_shutdown.icns and /dev/null differ diff --git a/icons/os_altlinux.icns b/icons/os_altlinux.icns deleted file mode 100644 index 0df5d7d..0000000 Binary files a/icons/os_altlinux.icns and /dev/null differ diff --git a/icons/os_arch.icns b/icons/os_arch.icns deleted file mode 100644 index 501cb26..0000000 Binary files a/icons/os_arch.icns and /dev/null differ diff --git a/icons/os_centos.icns b/icons/os_centos.icns deleted file mode 100644 index 096d632..0000000 Binary files a/icons/os_centos.icns and /dev/null differ diff --git a/icons/os_chrome.icns b/icons/os_chrome.icns deleted file mode 100644 index 25b593d..0000000 Binary files a/icons/os_chrome.icns and /dev/null differ diff --git a/icons/os_debian.icns b/icons/os_debian.icns deleted file mode 100644 index c18debd..0000000 Binary files a/icons/os_debian.icns and /dev/null differ diff --git a/icons/os_ecomstation.icns b/icons/os_ecomstation.icns deleted file mode 100644 index 9b1b121..0000000 Binary files a/icons/os_ecomstation.icns and /dev/null differ diff --git a/icons/os_fatdog.icns b/icons/os_fatdog.icns deleted file mode 100644 index 36caf47..0000000 Binary files a/icons/os_fatdog.icns and /dev/null differ diff --git a/icons/os_fedora.icns b/icons/os_fedora.icns deleted file mode 100644 index 627124c..0000000 Binary files a/icons/os_fedora.icns and /dev/null differ diff --git a/icons/os_freebsd.icns b/icons/os_freebsd.icns deleted file mode 100644 index 77a0ba6..0000000 Binary files a/icons/os_freebsd.icns and /dev/null differ diff --git a/icons/os_freedos.icns b/icons/os_freedos.icns deleted file mode 100644 index 6465496..0000000 Binary files a/icons/os_freedos.icns and /dev/null differ diff --git a/icons/os_funtoo.icns b/icons/os_funtoo.icns deleted file mode 100644 index 60720a7..0000000 Binary files a/icons/os_funtoo.icns and /dev/null differ diff --git a/icons/os_gentoo.icns b/icons/os_gentoo.icns deleted file mode 100644 index 8cb4a11..0000000 Binary files a/icons/os_gentoo.icns and /dev/null differ diff --git a/icons/os_gummiboot.icns b/icons/os_gummiboot.icns deleted file mode 100644 index 0b1b6ed..0000000 Binary files a/icons/os_gummiboot.icns and /dev/null differ diff --git a/icons/os_haiku.icns b/icons/os_haiku.icns deleted file mode 100644 index 1a64175..0000000 Binary files a/icons/os_haiku.icns and /dev/null differ diff --git a/icons/os_hwtest.icns b/icons/os_hwtest.icns deleted file mode 100644 index 27113de..0000000 Binary files a/icons/os_hwtest.icns and /dev/null differ diff --git a/icons/os_kubuntu.icns b/icons/os_kubuntu.icns deleted file mode 100644 index 2763a8a..0000000 Binary files a/icons/os_kubuntu.icns and /dev/null differ diff --git a/icons/os_legacy.icns b/icons/os_legacy.icns deleted file mode 100644 index f3025bb..0000000 Binary files a/icons/os_legacy.icns and /dev/null differ diff --git a/icons/os_linux.icns b/icons/os_linux.icns deleted file mode 100644 index 6d1dad9..0000000 Binary files a/icons/os_linux.icns and /dev/null differ diff --git a/icons/os_linuxmint.icns b/icons/os_linuxmint.icns deleted file mode 100644 index e0a5a72..0000000 Binary files a/icons/os_linuxmint.icns and /dev/null differ diff --git a/icons/os_lubuntu.icns b/icons/os_lubuntu.icns deleted file mode 100644 index 7f896fe..0000000 Binary files a/icons/os_lubuntu.icns and /dev/null differ diff --git a/icons/os_mac.icns b/icons/os_mac.icns deleted file mode 100644 index 11f76c9..0000000 Binary files a/icons/os_mac.icns and /dev/null differ diff --git a/icons/os_mandriva.icns b/icons/os_mandriva.icns deleted file mode 100644 index 1c0d20a..0000000 Binary files a/icons/os_mandriva.icns and /dev/null differ diff --git a/icons/os_manjaro.icns b/icons/os_manjaro.icns deleted file mode 100644 index 3c44950..0000000 Binary files a/icons/os_manjaro.icns and /dev/null differ diff --git a/icons/os_netbsd.icns b/icons/os_netbsd.icns deleted file mode 100644 index ab1e7ba..0000000 Binary files a/icons/os_netbsd.icns and /dev/null differ diff --git a/icons/os_openbsd.icns b/icons/os_openbsd.icns deleted file mode 100644 index 73ed6aa..0000000 Binary files a/icons/os_openbsd.icns and /dev/null differ diff --git a/icons/os_opensuse.icns b/icons/os_opensuse.icns deleted file mode 100644 index a5165e8..0000000 Binary files a/icons/os_opensuse.icns and /dev/null differ diff --git a/icons/os_redhat.icns b/icons/os_redhat.icns deleted file mode 100644 index fa55388..0000000 Binary files a/icons/os_redhat.icns and /dev/null differ diff --git a/icons/os_refind.icns b/icons/os_refind.icns deleted file mode 100644 index 043a074..0000000 Binary files a/icons/os_refind.icns and /dev/null differ diff --git a/icons/os_refit.icns b/icons/os_refit.icns deleted file mode 100644 index 652c8b2..0000000 Binary files a/icons/os_refit.icns and /dev/null differ diff --git a/icons/os_slackware.icns b/icons/os_slackware.icns deleted file mode 100644 index 24363b6..0000000 Binary files a/icons/os_slackware.icns and /dev/null differ diff --git a/icons/os_suse.icns b/icons/os_suse.icns deleted file mode 100644 index a5165e8..0000000 Binary files a/icons/os_suse.icns and /dev/null differ diff --git a/icons/os_ubuntu.icns b/icons/os_ubuntu.icns deleted file mode 100644 index 36eea1b..0000000 Binary files a/icons/os_ubuntu.icns and /dev/null differ diff --git a/icons/os_unknown.icns b/icons/os_unknown.icns deleted file mode 100644 index 46f06ba..0000000 Binary files a/icons/os_unknown.icns and /dev/null differ diff --git a/icons/os_win.icns b/icons/os_win.icns deleted file mode 100644 index ca89519..0000000 Binary files a/icons/os_win.icns and /dev/null differ diff --git a/icons/tool_apple_rescue.icns b/icons/tool_apple_rescue.icns deleted file mode 100644 index 010d9a9..0000000 Binary files a/icons/tool_apple_rescue.icns and /dev/null differ diff --git a/icons/tool_memtest.icns b/icons/tool_memtest.icns deleted file mode 100644 index fb1bc8e..0000000 Binary files a/icons/tool_memtest.icns and /dev/null differ diff --git a/icons/tool_mok_tool.icns b/icons/tool_mok_tool.icns deleted file mode 100644 index 4b9bf48..0000000 Binary files a/icons/tool_mok_tool.icns and /dev/null differ diff --git a/icons/tool_part.icns b/icons/tool_part.icns deleted file mode 100644 index a542b53..0000000 Binary files a/icons/tool_part.icns and /dev/null differ diff --git a/icons/tool_shell.icns b/icons/tool_shell.icns deleted file mode 100644 index 916f7ac..0000000 Binary files a/icons/tool_shell.icns and /dev/null differ diff --git a/icons/tool_windows_rescue.icns b/icons/tool_windows_rescue.icns deleted file mode 100644 index 031e447..0000000 Binary files a/icons/tool_windows_rescue.icns and /dev/null differ diff --git a/icons/transparent.icns b/icons/transparent.icns deleted file mode 100644 index 32ac2ed..0000000 Binary files a/icons/transparent.icns and /dev/null differ diff --git a/icons/vol_external.icns b/icons/vol_external.icns deleted file mode 100644 index f1cc9cf..0000000 Binary files a/icons/vol_external.icns and /dev/null differ diff --git a/icons/vol_internal.icns b/icons/vol_internal.icns deleted file mode 100644 index 790b2b4..0000000 Binary files a/icons/vol_internal.icns and /dev/null differ diff --git a/icons/vol_optical.icns b/icons/vol_optical.icns deleted file mode 100644 index 13e25f5..0000000 Binary files a/icons/vol_optical.icns and /dev/null differ diff --git a/install.sh b/install.sh index f538a43..cb87606 100755 --- a/install.sh +++ b/install.sh @@ -474,7 +474,6 @@ SetupMacHfs() { cp -n "$InstallDir/$TargetDir/boot.efi" "$InstallDir/$TargetDir/boot.efi-backup" &> /dev/null ln -f "$InstallDir/$TargetDir/$1" "$InstallDir/$TargetDir/boot.efi" touch "$InstallDir/mach_kernel" - cp -n "$RefindDir/icons/os_refind.icns" "$InstallDir/.VolumeIcon.icns" &> /dev/null rm "$InstallDir/$TargetDir/SystemVersion.plist" &> /dev/null cat - << ENDOFHERE >> "$InstallDir/$TargetDir/SystemVersion.plist" diff --git a/mkdistrib b/mkdistrib index bd8279b..545f458 100755 --- a/mkdistrib +++ b/mkdistrib @@ -49,7 +49,7 @@ rm -rf debian/refind debian/*.log # Prepare a place and copy files there.... mkdir -p ../snapshots/$1/refind-$1/icons -cp --preserve=timestamps icons/*.icns ../snapshots/$1/refind-$1/icons/ +cp --preserve=timestamps icons/*png ../snapshots/$1/refind-$1/icons/ cp -a debian docs images keys fonts banners include EfiLib libeg mok refind filesystems gptsync refind.spec install.sh mkrlconf.sh mvrefind.sh CREDITS.txt NEWS.txt BUILDING.txt COPYING.txt LICENSE.txt README.txt refind.inf Make.tiano Make.common Makefile refind.conf-sample ../snapshots/$1/refind-$1 # Go there and prepare a souce code zip file.... diff --git a/refind/main.c b/refind/main.c index 7ea5571..1340814 100644 --- a/refind/main.c +++ b/refind/main.c @@ -61,13 +61,15 @@ #define EFI_SECURITY_VIOLATION EFIERR (26) #endif #endif -//#else + #include "../EfiLib/BdsHelper.h" #include "../EfiLib/legacy.h" #ifndef EFI_OS_INDICATIONS_BOOT_TO_FW_UI #define EFI_OS_INDICATIONS_BOOT_TO_FW_UI 0x0000000000000001ULL -#else +#endif + +#ifdef __MAKEWITH_TIANO #define LibLocateHandle gBS->LocateHandleBuffer #endif @@ -166,7 +168,7 @@ static VOID AboutrEFInd(VOID) if (AboutMenu.EntryCount == 0) { AboutMenu.TitleImage = BuiltinIcon(BUILTIN_ICON_FUNC_ABOUT); - AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.8.0.3"); + AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.8.0.5"); AddMenuInfoLine(&AboutMenu, L""); AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2006-2010 Christoph Pfisterer"); AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2012-2014 Roderick W. Smith"); @@ -2038,6 +2040,7 @@ static UINTN ScanDriverDir(IN CHAR16 *Path) return (NumFound); } +#ifdef __MAKEWITH_GNUEFI static EFI_STATUS ConnectAllDriversToAllControllers(VOID) { EFI_STATUS Status; @@ -2105,6 +2108,12 @@ Done: MyFreePool (AllHandleBuffer); return Status; } /* EFI_STATUS ConnectAllDriversToAllControllers() */ +#else +static EFI_STATUS ConnectAllDriversToAllControllers(VOID) { + BdsLibConnectAllDriversToAllControllers(); + return 0; +} +#endif // Load all EFI drivers from rEFInd's "drivers" subdirectory and from the // directories specified by the user in the "scan_driver_dirs" configuration @@ -2163,8 +2172,7 @@ static VOID FindLegacyBootType(VOID) { GlobalConfig.LegacyType = LEGACY_TYPE_MAC; } // static VOID FindLegacyBootType -// Warn the user if legacy OS scans are enabled but the firmware or this -// application can't support them.... +// Warn the user if legacy OS scans are enabled but the firmware can't support them.... static VOID WarnIfLegacyProblems() { BOOLEAN found = FALSE; UINTN i = 0;