kc1: OMAP4 reboot mode support

This adds support for the omap4 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 or fastboot.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
master
Paul Kocialkowski 8 years ago committed by Tom Rini
parent 69847dd8f0
commit 7c0a4b7955
  1. 18
      board/amazon/kc1/kc1.c
  2. 2
      board/amazon/kc1/kc1.h
  3. 4
      include/configs/kc1.h

@ -85,6 +85,19 @@ int board_init(void)
int misc_init_r(void)
{
char reboot_mode[2] = { 0 };
/* Reboot mode */
omap_reboot_mode(reboot_mode, sizeof(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();
}
/* Serial number */
omap_die_id_serial();
@ -123,6 +136,11 @@ void get_board_serial(struct tag_serialnr *serialnr)
omap_die_id_get_board_serial(serialnr);
}
int fb_set_reboot_flag(void)
{
return omap_reboot_mode_store("b");
}
#ifndef CONFIG_SPL_BUILD
int board_mmc_init(bd_t *bis)
{

@ -11,6 +11,7 @@
#include <asm/arch/mux_omap4.h>
#define KC1_GPIO_USB_ID 52
#define KC1_GPIO_MBID1 173
#define KC1_GPIO_MBID0 174
#define KC1_GPIO_MBID3 177
@ -28,6 +29,7 @@ const struct pad_conf_entry core_padconf_array[] = {
{ GPMC_AD7, (IEN | PTU | M1) }, /* sdmmc2_dat7 */
{ GPMC_NOE, (IEN | PTU | M1) }, /* sdmmc2_clk */
{ GPMC_NWE, (IEN | PTU | M1) }, /* sdmmc2_cmd */
{ GPMC_NCS2, (IEN | PTD | M3) }, /* gpio_52 */
/* CAM */
{ CAM_SHUTTER, (IDIS | DIS | M7) }, /* safe_mode */
{ CAM_STROBE, (IDIS | DIS | M7) }, /* safe_mode */

@ -249,6 +249,10 @@
#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; " \
"if test reboot-${reboot-mode} = reboot-b; then " \
"echo fastboot; fastboot 0; 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}; " \

Loading…
Cancel
Save