X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Ffsl_validate.h;h=252d499e7b1a5c705ac6ae24621f42274279d943;hb=46b5c8ed017958fc387ab86c71ae6c90abb6793c;hp=c350938d1ffc92142f7dfeba5616b7dbf694e55b;hpb=c98b171e1098f94b2ff7720c45a25a602882f876;p=platform%2Fkernel%2Fu-boot.git diff --git a/include/fsl_validate.h b/include/fsl_validate.h index c350938..252d499 100644 --- a/include/fsl_validate.h +++ b/include/fsl_validate.h @@ -1,7 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright 2015 Freescale Semiconductor, Inc. - * - * SPDX-License-Identifier: GPL-2.0+ */ #ifndef _FSL_VALIDATE_H_ @@ -9,9 +8,10 @@ #include #include -#include #include +struct cmd_tbl; + #define WORD_SIZE 4 /* Minimum and maximum size of RSA signature length in bits */ @@ -40,8 +40,8 @@ struct fsl_secboot_img_hdr { u8 num_srk; u8 srk_sel; u8 reserve; - u8 ie_flag; } len_kr; + u8 ie_flag; u32 uid_flag; @@ -69,6 +69,11 @@ struct fsl_secboot_img_hdr { #define MAX_KEY_ENTRIES 8 #endif +#if defined(CONFIG_FSL_ISBC_KEY_EXT) +#define IE_FLAG_MASK 0x1 +#define SCRATCH_IE_LOW_ADR 13 +#define SCRATCH_IE_HIGH_ADR 14 +#endif #else /* CONFIG_ESBC_HDR_LS */ @@ -150,6 +155,10 @@ struct fsl_secboot_img_hdr { #define MAX_KEY_ENTRIES 4 #endif +#if defined(CONFIG_FSL_ISBC_KEY_EXT) +#define IE_FLAG_MASK 0xFFFFFFFF +#endif + #endif /* CONFIG_ESBC_HDR_LS */ @@ -202,6 +211,17 @@ struct fsl_secboot_sg_table { }; #endif +/* ESBC global structure. + * Data to be used across verification of different images. + * Stores following Data: + * IE Table + */ +struct fsl_secboot_glb { +#if defined(CONFIG_FSL_ISBC_KEY_EXT) + uintptr_t ie_addr; + struct ie_key_info ie_tbl; +#endif +}; /* * ESBC private structure. * Private structure used by ESBC to store following fields @@ -213,7 +233,7 @@ struct fsl_secboot_sg_table { */ struct fsl_secboot_img_priv { uint32_t hdr_location; - u32 ie_addr; + uintptr_t ie_addr; u32 key_len; struct fsl_secboot_img_hdr hdr; @@ -242,15 +262,14 @@ struct fsl_secboot_img_priv { uint32_t img_size; /* ESBC Image Size */ }; -int do_esbc_halt(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]); +int do_esbc_halt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]); int fsl_secboot_validate(uintptr_t haddr, char *arg_hash_str, uintptr_t *img_addr_ptr); -int fsl_secboot_blob_encap(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]); -int fsl_secboot_blob_decap(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]); +int fsl_secboot_blob_encap(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]); +int fsl_secboot_blob_decap(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]); int fsl_check_boot_mode_secure(void); int fsl_setenv_chain_of_trust(void);