Lokesh Vutla | bc5bd3a | 2018-08-27 15:57:15 +0530 | [diff] [blame] | 1 | # SPDX-License-Identifier: GPL-2.0+ |
| 2 | # |
| 3 | # Copyright (C) 2017-2018 Texas Instruments Incorporated - http://www.ti.com/ |
| 4 | # Lokesh Vutla <lokeshvutla@ti.com> |
| 5 | |
| 6 | ifdef CONFIG_SPL_BUILD |
| 7 | |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 8 | # Openssl is required to generate x509 certificate. |
| 9 | # Error out if openssl is not available. |
| 10 | ifeq ($(shell which openssl),) |
| 11 | $(error "No openssl in $(PATH), consider installing openssl") |
| 12 | endif |
| 13 | |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 14 | IMAGE_SIZE= $(shell cat $(obj)/u-boot-spl.bin | wc -c) |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 15 | MAX_SIZE= $(shell printf "%d" $(CONFIG_SYS_K3_MAX_DOWNLODABLE_IMAGE_SIZE)) |
| 16 | |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 17 | ifeq ($(CONFIG_SYS_K3_KEY), "") |
Lokesh Vutla | b5d3647 | 2019-05-02 15:35:51 +0530 | [diff] [blame] | 18 | KEY="" |
Andrew F. Davis | 3fa338d | 2019-04-12 12:54:46 -0400 | [diff] [blame] | 19 | # On HS use real key or warn if not available |
| 20 | ifeq ($(CONFIG_TI_SECURE_DEVICE),y) |
| 21 | ifneq ($(wildcard $(TI_SECURE_DEV_PKG)/keys/custMpk.pem),) |
| 22 | KEY=$(TI_SECURE_DEV_PKG)/keys/custMpk.pem |
| 23 | else |
| 24 | $(warning "WARNING: signing key not found. Random key will NOT work on HS hardware!") |
| 25 | endif |
| 26 | endif |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 27 | else |
Lokesh Vutla | c39337c | 2018-12-19 12:53:31 +0530 | [diff] [blame] | 28 | KEY=$(patsubst "%",$(srctree)/%,$(CONFIG_SYS_K3_KEY)) |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 29 | endif |
| 30 | |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 31 | # tiboot3.bin is mandated by ROM and ROM only supports R5 boot. |
| 32 | # So restrict tiboot3.bin creation for CPU_V7R. |
| 33 | ifdef CONFIG_CPU_V7R |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 34 | image_check: $(obj)/u-boot-spl.bin FORCE |
| 35 | @if [ $(IMAGE_SIZE) -gt $(MAX_SIZE) ]; then \ |
| 36 | echo "===============================================" >&2; \ |
| 37 | echo "ERROR: Final Image too big. " >&2; \ |
| 38 | echo "$< size = $(IMAGE_SIZE), max size = $(MAX_SIZE)" >&2; \ |
| 39 | echo "===============================================" >&2; \ |
| 40 | exit 1; \ |
| 41 | fi |
| 42 | |
Lokesh Vutla | b5d3647 | 2019-05-02 15:35:51 +0530 | [diff] [blame] | 43 | tiboot3.bin: image_check FORCE |
| 44 | $(srctree)/tools/k3_gen_x509_cert.sh -c 16 -b $(obj)/u-boot-spl.bin \ |
| 45 | -o $@ -l $(CONFIG_SPL_TEXT_BASE) -k $(KEY) |
Lokesh Vutla | 6b6a394 | 2018-11-02 19:51:04 +0530 | [diff] [blame] | 46 | |
| 47 | ALL-y += tiboot3.bin |
| 48 | endif |
| 49 | |
Lokesh Vutla | bc5bd3a | 2018-08-27 15:57:15 +0530 | [diff] [blame] | 50 | ifdef CONFIG_ARM64 |
Andrew F. Davis | 3fa338d | 2019-04-12 12:54:46 -0400 | [diff] [blame] | 51 | ifeq ($(CONFIG_TI_SECURE_DEVICE),y) |
| 52 | SPL_ITS := u-boot-spl-k3_HS.its |
| 53 | $(SPL_ITS): FORCE |
| 54 | IS_HS=1 \ |
| 55 | $(srctree)/tools/k3_fit_atf.sh \ |
| 56 | $(patsubst %,$(obj)/dts/%.dtb,$(subst ",,$(CONFIG_SPL_OF_LIST))) > $@ |
| 57 | |
| 58 | ALL-y += tispl.bin_HS |
| 59 | else |
Lokesh Vutla | bc5bd3a | 2018-08-27 15:57:15 +0530 | [diff] [blame] | 60 | SPL_ITS := u-boot-spl-k3.its |
| 61 | $(SPL_ITS): FORCE |
| 62 | $(srctree)/tools/k3_fit_atf.sh \ |
| 63 | $(patsubst %,$(obj)/dts/%.dtb,$(subst ",,$(CONFIG_SPL_OF_LIST))) > $@ |
| 64 | |
| 65 | ALL-y += tispl.bin |
| 66 | endif |
Andrew F. Davis | 3fa338d | 2019-04-12 12:54:46 -0400 | [diff] [blame] | 67 | endif |
| 68 | |
| 69 | else |
Lokesh Vutla | bc5bd3a | 2018-08-27 15:57:15 +0530 | [diff] [blame] | 70 | |
Andrew F. Davis | 3fa338d | 2019-04-12 12:54:46 -0400 | [diff] [blame] | 71 | ifeq ($(CONFIG_TI_SECURE_DEVICE),y) |
| 72 | ALL-y += u-boot.img_HS |
Lokesh Vutla | bc5bd3a | 2018-08-27 15:57:15 +0530 | [diff] [blame] | 73 | else |
| 74 | ALL-y += u-boot.img |
| 75 | endif |
Andrew F. Davis | 3fa338d | 2019-04-12 12:54:46 -0400 | [diff] [blame] | 76 | endif |
| 77 | |
| 78 | include $(srctree)/arch/arm/mach-k3/config_secure.mk |