From: Paul Kocialkowski Date: Mon, 20 Jul 2015 13:17:12 +0000 (+0200) Subject: sniper: OMAP3 reboot mode support X-Git-Tag: KARO-TX6-2015-09-18~469 X-Git-Url: https://git.kernelconcepts.de/?p=karo-tx-uboot.git;a=commitdiff_plain;h=2453350952e9f816c9c2f3faa46a412924e820bb sniper: OMAP3 reboot mode support This adds support for the omap3 reboot mode mechanism and exports the reboot mode via an environment variable, that is used in the boot command to make it possible to boot from the recovery partition. Signed-off-by: Paul Kocialkowski Reviewed-by: Tom Rini --- diff --git a/board/lge/sniper/sniper.c b/board/lge/sniper/sniper.c index d5318c4f32..44d422da1b 100644 --- a/board/lge/sniper/sniper.c +++ b/board/lge/sniper/sniper.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -67,6 +68,23 @@ int board_init(void) return 0; } +int misc_init_r(void) +{ + char reboot_mode[2] = { 0 }; + + /* Reboot mode */ + + reboot_mode[0] = omap_reboot_mode(); + if (reboot_mode[0] > 0 && isascii(reboot_mode[0])) { + if (!getenv("reboot-mode")) + setenv("reboot-mode", (char *)reboot_mode); + + omap_reboot_mode_clear(); + } + + return 0; +} + void set_muxconf_regs(void) { MUX_SNIPER(); diff --git a/include/configs/sniper.h b/include/configs/sniper.h index bf788baaee..2ac9291c44 100644 --- a/include/configs/sniper.h +++ b/include/configs/sniper.h @@ -35,6 +35,7 @@ */ #define CONFIG_SYS_GENERIC_BOARD +#define CONFIG_MISC_INIT_R /* * Clocks @@ -251,6 +252,8 @@ #define CONFIG_BOOTCOMMAND \ "setenv boot_mmc_part ${kernel_mmc_part}; " \ + "if test reboot-${reboot-mode} = reboot-r; then " \ + "echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; " \ "part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; " \ "part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; " \ "mmc dev ${boot_mmc_dev}; " \