diff options
author | Sean Rhodes <sean@starlabs.systems> | 2022-02-13 21:19:19 +0000 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2022-02-25 20:44:42 +0000 |
commit | 4a9be9f32120794e7ea16d7dd5f4490f17dad623 (patch) | |
tree | e538327c7802d4e76a86980423743f88731209c4 /payloads/external | |
parent | 3ecee3cdd92e799072eb47262a1be29d62de927b (diff) |
payloads/tianocore: Pass SD_MMC_TIMEOUT build option
By default, edk2 allows 1000000μs for SD Card Readers and eMMC to
initialize which is excessive and causes a boot delay. This makes
the value configurable and uses a default of 1000μs which is sufficient
for the majority of readers. The value of 1000μs was hardcoded in
MrChromeBox's fork for around 2 years with no reported issues.
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I873bcddf6f37a9eaae5c84991b3996d51fb460d3
Reviewed-on: https://review.coreboot.org/c/coreboot/+/61902
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Diffstat (limited to 'payloads/external')
-rw-r--r-- | payloads/external/Makefile.inc | 1 | ||||
-rw-r--r-- | payloads/external/tianocore/Kconfig | 7 | ||||
-rw-r--r-- | payloads/external/tianocore/Makefile | 4 |
3 files changed, 12 insertions, 0 deletions
diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc index 049fcd9ce8..e805a07b0a 100644 --- a/payloads/external/Makefile.inc +++ b/payloads/external/Makefile.inc @@ -156,6 +156,7 @@ $(obj)/UEFIPAYLOAD.fd tianocore: $(DOTCONFIG) CONFIG_TIANOCORE_HAVE_EFI_SHELL=$(CONFIG_TIANOCORE_HAVE_EFI_SHELL) \ CONFIG_TIANOCORE_PRIORITIZE_INTERNAL=$(CONFIG_TIANOCORE_PRIORITIZE_INTERNAL) \ CONFIG_TIANOCORE_PS2_SUPPORT=$(CONFIG_TIANOCORE_PS2_SUPPORT) \ + CONFIG_TIANOCORE_SD_MMC_TIMEOUT=$(CONFIG_TIANOCORE_SD_MMC_TIMEOUT) \ CONFIG_TIANOCORE_USE_8254_TIMER=$(CONFIG_TIANOCORE_USE_8254_TIMER) \ CONFIG_ECAM_MMCONF_BASE_ADDRESS=$(CONFIG_ECAM_MMCONF_BASE_ADDRESS) \ GCC_CC_x86_32=$(GCC_CC_x86_32) \ diff --git a/payloads/external/tianocore/Kconfig b/payloads/external/tianocore/Kconfig index 4d52994dd5..4194290747 100644 --- a/payloads/external/tianocore/Kconfig +++ b/payloads/external/tianocore/Kconfig @@ -168,6 +168,13 @@ config TIANOCORE_PS2_SUPPORT help Include support for PS/2 keyboards +config TIANOCORE_SD_MMC_TIMEOUT + int "Timeout in μs for initializing SD Card reader" + default 1000 + help + The amount of time allowed to initialize the SD Card reader and/or eMMC drive. + Most only require 1000μs, but certain readers can take 1000000μs. + endif if TIANOCORE_COREBOOTPAYLOAD diff --git a/payloads/external/tianocore/Makefile b/payloads/external/tianocore/Makefile index c6247cdefc..437e706d55 100644 --- a/payloads/external/tianocore/Makefile +++ b/payloads/external/tianocore/Makefile @@ -64,6 +64,10 @@ endif ifeq ($(CONFIG_TIANOCORE_CBMEM_LOGGING),y) BUILD_STR += -D USE_CBMEM_FOR_CONSOLE=TRUE endif +# SD_MMC_TIMEOUT = 1000000 +ifneq ($(CONFIG_TIANOCORE_SD_MMC_TIMEOUT),) +BUILD_STR += -D SD_MMC_TIMEOUT=$(CONFIG_TIANOCORE_SD_MMC_TIMEOUT) +endif # # The below are legacy options only available in CorebootPayloadPkg: # |