From: Pali Rohár Date: Fri, 18 Jun 2021 13:27:04 +0000 (+0200) Subject: Nokia RX-51: Load bootmenu also from uSD card X-Git-Url: http://git.dujemihanovic.xyz/login.html?a=commitdiff_plain;h=f75b7b82a3b63fd7abac8d89bff1f6bd51f41378;p=u-boot.git Nokia RX-51: Load bootmenu also from uSD card By default bootmenu is loaded only from eMMC. After this change U-Boot first tries to load bootmenu from uSD card and if it fails then fallback to eMMC. People want to boot alternative OS from removable uSD without need to modify eMMC content. So this backward compatible change allows it. Part of this change is also optimization of trymmc* macros so they can be used in preboot macro for loading bootmenu. Signed-off-by: Pali Rohár Signed-off-by: Lokesh Vutla Link: https://lore.kernel.org/r/20210618132704.32066-2-pali@kernel.org --- diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index 742c1a6465..7ef25ea838 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -138,23 +138,10 @@ int rx51_kp_getc(struct stdio_dev *sdev); "setenv setup_omap_atag 1;" \ "bootm ${attkernaddr} || bootz ${attkernaddr};" \ "setenv setup_omap_atag\0" \ - "trymmcscriptboot=if run switchmmc; then " \ - "if run scriptload; then " \ - "run scriptboot;" \ - "fi;" \ - "fi\0" \ - "trymmckernboot=if run switchmmc; then " \ - "if run kernload; then " \ - "run kernboot;" \ - "fi;" \ - "fi\0" \ - "trymmckerninitrdboot=if run switchmmc; then " \ - "if run initrdload; then " \ - "if run kernload; then " \ - "run kerninitrdboot;" \ - "fi;" \ - "fi; " \ - "fi\0" \ + "trymmcscriptboot=run switchmmc && run scriptload && run scriptboot\0" \ + "trymmckernboot=run switchmmc && run kernload && run kernboot\0" \ + "trymmckerninitrdboot=run switchmmc && run initrdload && " \ + "run kernload && run kerninitrdboot\0" \ "trymmcpartboot=setenv mmcscriptfile boot.scr; run trymmcscriptboot;" \ "setenv mmckernfile uImage; run trymmckernboot;" \ "setenv mmckernfile zImage; run trymmckernboot\0" \ @@ -170,15 +157,11 @@ int rx51_kp_getc(struct stdio_dev *sdev); "fi\0" \ "emmcboot=setenv mmcnum 1; run trymmcboot\0" \ "sdboot=setenv mmcnum 0; run trymmcboot\0" \ - "preboot=setenv mmcnum 1; setenv mmcpart 1;" \ - "setenv mmcscriptfile bootmenu.scr;" \ - "if run switchmmc; then " \ - "setenv mmctype fat;" \ - "if run scriptload; then run scriptboot; else " \ - "setenv mmctype ext4;" \ - "if run scriptload; then run scriptboot; fi;" \ - "fi;" \ - "fi;" \ + "trymmcbootmenu=setenv mmctype fat && run trymmcscriptboot || " \ + "setenv mmctype ext4 && run trymmcscriptboot\0" \ + "preboot=setenv mmcpart 1; setenv mmcscriptfile bootmenu.scr;" \ + "setenv mmcnum 0 && run trymmcbootmenu || " \ + "setenv mmcnum 1 && run trymmcbootmenu;" \ "if run slide; then true; else " \ "setenv bootmenu_delay 0;" \ "setenv bootdelay 0;" \