Commit dac22c65 authored by davidcunado-arm's avatar davidcunado-arm Committed by GitHub
Browse files

Merge pull request #990 from masahir0y/uniphier

uniphier: embed ROTPK hash into BL1/BL2
parents 41605ffe 63634800
...@@ -86,11 +86,29 @@ TBB_SOURCES := drivers/auth/auth_mod.c \ ...@@ -86,11 +86,29 @@ TBB_SOURCES := drivers/auth/auth_mod.c \
drivers/auth/img_parser_mod.c \ drivers/auth/img_parser_mod.c \
drivers/auth/tbbr/tbbr_cot.c \ drivers/auth/tbbr/tbbr_cot.c \
plat/common/tbbr/plat_tbbr.c \ plat/common/tbbr/plat_tbbr.c \
$(PLAT_PATH)/uniphier_rotpk.S \
$(PLAT_PATH)/uniphier_tbbr.c $(PLAT_PATH)/uniphier_tbbr.c
BL1_SOURCES += $(TBB_SOURCES) BL1_SOURCES += $(TBB_SOURCES)
BL2_SOURCES += $(TBB_SOURCES) BL2_SOURCES += $(TBB_SOURCES)
ROT_KEY = $(BUILD_PLAT)/rot_key.pem
ROTPK_HASH = $(BUILD_PLAT)/rotpk_sha256.bin
$(eval $(call add_define_val,ROTPK_HASH,'"$(ROTPK_HASH)"'))
$(BUILD_PLAT)/bl1/uniphier_rotpk.o: $(ROTPK_HASH)
$(BUILD_PLAT)/bl2/uniphier_rotpk.o: $(ROTPK_HASH)
certificates: $(ROT_KEY)
$(ROT_KEY):
@echo " OPENSSL $@"
$(Q)openssl genrsa 2048 > $@ 2>/dev/null
$(ROTPK_HASH): $(ROT_KEY)
@echo " OPENSSL $@"
$(Q)openssl rsa -in $< -pubout -outform DER 2>/dev/null |\
openssl dgst -sha256 -binary > $@ 2>/dev/null
endif endif
.PHONY: bl1_gzip .PHONY: bl1_gzip
......
/*
* Copyright (c) 2017, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
.global uniphier_rotpk_hash
.global uniphier_rotpk_hash_end
uniphier_rotpk_hash:
/* DER header */
.byte 0x30, 0x31, 0x30, 0x0D, 0x06, 0x09, 0x60, 0x86, 0x48
.byte 0x01, 0x65, 0x03, 0x04, 0x02, 0x01, 0x05, 0x00, 0x04, 0x20
/* SHA256 */
.incbin ROTPK_HASH
uniphier_rotpk_hash_end:
...@@ -6,10 +6,14 @@ ...@@ -6,10 +6,14 @@
#include <platform.h> #include <platform.h>
extern char uniphier_rotpk_hash[], uniphier_rotpk_hash_end[];
int plat_get_rotpk_info(void *cookie, void **key_ptr, unsigned int *key_len, int plat_get_rotpk_info(void *cookie, void **key_ptr, unsigned int *key_len,
unsigned int *flags) unsigned int *flags)
{ {
*flags = ROTPK_NOT_DEPLOYED; *key_ptr = uniphier_rotpk_hash;
*key_len = uniphier_rotpk_hash_end - uniphier_rotpk_hash;
*flags = ROTPK_IS_HASH;
return 0; return 0;
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment