relies on the env variable partitions to contain the list of
partitions as required by the gpt command.
-config FASTBOOT_USE_BCB_SET_REBOOT_FLAG
- bool "Use BCB by fastboot to set boot reason"
- depends on CMD_BCB && !ARCH_MESON && !ARCH_ROCKCHIP && !TARGET_KC1 && \
- !TARGET_SNIPER && !TARGET_AM57XX_EVM && !TARGET_DRA7XX_EVM
- default y
- help
- Fastboot could implement setting of reboot reason in a generic fashion
- via BCB commands. BCB commands are able to write reboot reason into
- command field of boot control block. In general case it is sufficient
- implementation if your platform supports BCB commands and doesn't
- require any specific reboot reason handling.
-
endif # FASTBOOT
endmenu
+++ /dev/null
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright 2020 GlobalLogic.
- * Roman Kovalivskyi <roman.kovalivskyi@globallogic.com>
- */
-
-#include <common.h>
-#include <fastboot.h>
-
-/**
- * fastboot_set_reboot_flag() - Set flag to indicate reboot-bootloader
- *
- * Set flag which indicates that we should reboot into the bootloader
- * following the reboot that fastboot executes after this function.
- *
- * This function should be overridden in your board file with one
- * which sets whatever flag your board specific Android bootloader flow
- * requires in order to re-enter the bootloader.
- */
-int fastboot_set_reboot_flag(enum fastboot_reboot_reason reason)
-{
- char cmd[64];
-
- if (reason >= FASTBOOT_REBOOT_REASONS_COUNT)
- return -EINVAL;
-
- snprintf(cmd, sizeof(cmd), "bcb load %d misc",
- CONFIG_FASTBOOT_FLASH_MMC_DEV);
-
- if (run_command(cmd, 0))
- return -ENODEV;
-
- snprintf(cmd, sizeof(cmd), "bcb set command %s",
- fastboot_boot_cmds[reason]);
-
- if (run_command(cmd, 0))
- return -ENOEXEC;
-
- if (run_command("bcb store", 0))
- return -EIO;
-
- return 0;
-}
FASTBOOT_REBOOT_REASONS_COUNT
};
-/**
- * BCB boot commands
- */
-static const char * const fastboot_boot_cmds[] = {
- [FASTBOOT_REBOOT_REASON_BOOTLOADER] = "bootonce-bootloader",
- [FASTBOOT_REBOOT_REASON_FASTBOOTD] = "boot-fastboot",
- [FASTBOOT_REBOOT_REASON_RECOVERY] = "boot-recovery"
-};
-
/**
* fastboot_response() - Writes a response of the form "$tag$reason".
*