summaryrefslogtreecommitdiff
path: root/board/freescale
diff options
context:
space:
mode:
authorgaurav rana <gaurav.rana@freescale.com>2015-03-10 14:08:50 +0530
committerYork Sun <yorksun@freescale.com>2015-04-21 10:19:19 -0700
commit98cb0efde8aaed200750e6d75fa8e5fc01dcd8f4 (patch)
treebc4bd9462e516ce795e51b633f71f0800f3c4b73 /board/freescale
parent997c67d98b2230d3d17ed8143e490067d640b75b (diff)
downloadu-boot-imx-98cb0efde8aaed200750e6d75fa8e5fc01dcd8f4.zip
u-boot-imx-98cb0efde8aaed200750e6d75fa8e5fc01dcd8f4.tar.gz
u-boot-imx-98cb0efde8aaed200750e6d75fa8e5fc01dcd8f4.tar.bz2
Add bootscript support to esbc_validate.
1. Default environment will be used for secure boot flow which can't be edited or saved. 2. Command for secure boot is predefined in the default environment which will run on autoboot (and autoboot is the only option allowed in case of secure boot) and it looks like this: #define CONFIG_SECBOOT \ "setenv bs_hdraddr 0xe8e00000;" \ "esbc_validate $bs_hdraddr;" \ "source $img_addr;" \ "esbc_halt;" #endif 3. Boot Script can contain esbc_validate commands and bootm command. Uboot source command used in default secure boot command will run the bootscript. 4. Command esbc_halt added to ensure either bootm executes after validation of images or core should just spin. Signed-off-by: Ruchika Gupta <ruchika.gupta@freescale.com> Signed-off-by: Gaurav Rana <gaurav.rana@freescale.com> Reviewed-by: York Sun <yorksun@freescale.com>
Diffstat (limited to 'board/freescale')
-rw-r--r--board/freescale/common/cmd_esbc_validate.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/board/freescale/common/cmd_esbc_validate.c b/board/freescale/common/cmd_esbc_validate.c
index 8500ba5..8bbe85b 100644
--- a/board/freescale/common/cmd_esbc_validate.c
+++ b/board/freescale/common/cmd_esbc_validate.c
@@ -8,6 +8,16 @@
#include <command.h>
#include <fsl_validate.h>
+static int do_esbc_halt(cmd_tbl_t *cmdtp, int flag, int argc,
+ char * const argv[])
+{
+ printf("Core is entering spin loop.\n");
+loop:
+ goto loop;
+
+ return 0;
+}
+
static int do_esbc_validate(cmd_tbl_t *cmdtp, int flag, int argc,
char * const argv[])
{
@@ -32,3 +42,9 @@ U_BOOT_CMD(
"Validates signature on a given image using RSA verification",
esbc_validate_help_text
);
+
+U_BOOT_CMD(
+ esbc_halt, 1, 0, do_esbc_halt,
+ "Put the core in spin loop ",
+ ""
+);