Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 1 | # |
Masahiro Yamada | c9422fb | 2018-01-22 18:35:16 +0900 | [diff] [blame] | 2 | # Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved. |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 3 | # |
| 4 | # SPDX-License-Identifier: BSD-3-Clause |
| 5 | # |
| 6 | |
Masahiro Yamada | 75bfecb | 2017-12-19 11:56:05 +0900 | [diff] [blame] | 7 | override BL2_AT_EL3 := 1 |
Masahiro Yamada | c9422fb | 2018-01-22 18:35:16 +0900 | [diff] [blame] | 8 | override COLD_BOOT_SINGLE_CPU := 1 |
| 9 | override ENABLE_PLAT_COMPAT := 0 |
| 10 | override LOAD_IMAGE_V2 := 1 |
| 11 | override PROGRAMMABLE_RESET_ADDRESS := 1 |
| 12 | override USE_COHERENT_MEM := 1 |
| 13 | override USE_TBBR_DEFS := 1 |
| 14 | override ENABLE_SVE_FOR_NS := 0 |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 15 | |
| 16 | # Cortex-A53 revision r0p4-51rel0 |
| 17 | # needed for LD20, unneeded for LD11, PXs3 (no ACE) |
| 18 | ERRATA_A53_855873 := 1 |
| 19 | |
| 20 | FIP_ALIGN := 512 |
| 21 | |
| 22 | ifeq ($(NEED_BL32),yes) |
| 23 | $(eval $(call add_define,UNIPHIER_LOAD_BL32)) |
| 24 | endif |
| 25 | |
Douglas Raillard | 7dd775a | 2017-09-25 17:48:20 +0100 | [diff] [blame] | 26 | # Libraries |
| 27 | include lib/xlat_tables_v2/xlat_tables.mk |
| 28 | |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 29 | PLAT_PATH := plat/socionext/uniphier |
| 30 | PLAT_INCLUDES := -I$(PLAT_PATH)/include |
| 31 | |
Masahiro Yamada | 75bfecb | 2017-12-19 11:56:05 +0900 | [diff] [blame] | 32 | # common sources for BL2, BL31 (and BL32 if SPD=tspd) |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 33 | PLAT_BL_COMMON_SOURCES += drivers/console/aarch64/console.S \ |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 34 | $(PLAT_PATH)/uniphier_console.S \ |
| 35 | $(PLAT_PATH)/uniphier_helpers.S \ |
| 36 | $(PLAT_PATH)/uniphier_soc_info.c \ |
Douglas Raillard | 7dd775a | 2017-09-25 17:48:20 +0100 | [diff] [blame] | 37 | $(PLAT_PATH)/uniphier_xlat_setup.c \ |
| 38 | ${XLAT_TABLES_LIB_SRCS} |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 39 | |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 40 | BL2_SOURCES += common/desc_image_load.c \ |
Masahiro Yamada | 75bfecb | 2017-12-19 11:56:05 +0900 | [diff] [blame] | 41 | drivers/io/io_block.c \ |
| 42 | drivers/io/io_fip.c \ |
| 43 | drivers/io/io_memmap.c \ |
| 44 | drivers/io/io_storage.c \ |
| 45 | lib/cpus/aarch64/cortex_a53.S \ |
| 46 | lib/cpus/aarch64/cortex_a72.S \ |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 47 | $(PLAT_PATH)/uniphier_bl2_setup.c \ |
Masahiro Yamada | 75bfecb | 2017-12-19 11:56:05 +0900 | [diff] [blame] | 48 | $(PLAT_PATH)/uniphier_boot_device.c \ |
| 49 | $(PLAT_PATH)/uniphier_emmc.c \ |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 50 | $(PLAT_PATH)/uniphier_image_desc.c \ |
Masahiro Yamada | 75bfecb | 2017-12-19 11:56:05 +0900 | [diff] [blame] | 51 | $(PLAT_PATH)/uniphier_io_storage.c \ |
| 52 | $(PLAT_PATH)/uniphier_nand.c \ |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 53 | $(PLAT_PATH)/uniphier_scp.c \ |
Masahiro Yamada | 75bfecb | 2017-12-19 11:56:05 +0900 | [diff] [blame] | 54 | $(PLAT_PATH)/uniphier_usb.c |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 55 | |
| 56 | BL31_SOURCES += drivers/arm/cci/cci.c \ |
| 57 | drivers/arm/gic/common/gic_common.c \ |
| 58 | drivers/arm/gic/v3/gicv3_helpers.c \ |
| 59 | drivers/arm/gic/v3/gicv3_main.c \ |
| 60 | lib/cpus/aarch64/cortex_a53.S \ |
| 61 | lib/cpus/aarch64/cortex_a72.S \ |
| 62 | plat/common/plat_gicv3.c \ |
| 63 | plat/common/plat_psci_common.c \ |
| 64 | $(PLAT_PATH)/uniphier_bl31_setup.c \ |
| 65 | $(PLAT_PATH)/uniphier_cci.c \ |
| 66 | $(PLAT_PATH)/uniphier_gicv3.c \ |
| 67 | $(PLAT_PATH)/uniphier_psci.c \ |
| 68 | $(PLAT_PATH)/uniphier_scp.c \ |
| 69 | $(PLAT_PATH)/uniphier_smp.S \ |
| 70 | $(PLAT_PATH)/uniphier_syscnt.c \ |
| 71 | $(PLAT_PATH)/uniphier_topology.c |
| 72 | |
| 73 | ifeq (${TRUSTED_BOARD_BOOT},1) |
| 74 | |
| 75 | include drivers/auth/mbedtls/mbedtls_crypto.mk |
| 76 | include drivers/auth/mbedtls/mbedtls_x509.mk |
| 77 | |
| 78 | PLAT_INCLUDES += -Iinclude/common/tbbr |
| 79 | |
Masahiro Yamada | 75bfecb | 2017-12-19 11:56:05 +0900 | [diff] [blame] | 80 | BL2_SOURCES += drivers/auth/auth_mod.c \ |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 81 | drivers/auth/crypto_mod.c \ |
| 82 | drivers/auth/img_parser_mod.c \ |
| 83 | drivers/auth/tbbr/tbbr_cot.c \ |
| 84 | plat/common/tbbr/plat_tbbr.c \ |
Masahiro Yamada | 9679c9c | 2017-06-14 20:38:12 +0900 | [diff] [blame] | 85 | $(PLAT_PATH)/uniphier_rotpk.S \ |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 86 | $(PLAT_PATH)/uniphier_tbbr.c |
| 87 | |
Masahiro Yamada | 9679c9c | 2017-06-14 20:38:12 +0900 | [diff] [blame] | 88 | ROT_KEY = $(BUILD_PLAT)/rot_key.pem |
| 89 | ROTPK_HASH = $(BUILD_PLAT)/rotpk_sha256.bin |
| 90 | |
| 91 | $(eval $(call add_define_val,ROTPK_HASH,'"$(ROTPK_HASH)"')) |
Masahiro Yamada | 9679c9c | 2017-06-14 20:38:12 +0900 | [diff] [blame] | 92 | $(BUILD_PLAT)/bl2/uniphier_rotpk.o: $(ROTPK_HASH) |
| 93 | |
| 94 | certificates: $(ROT_KEY) |
Masahiro Yamada | df8fab9 | 2017-11-04 03:14:03 +0900 | [diff] [blame] | 95 | $(ROT_KEY): | $(BUILD_PLAT) |
Masahiro Yamada | 9679c9c | 2017-06-14 20:38:12 +0900 | [diff] [blame] | 96 | @echo " OPENSSL $@" |
| 97 | $(Q)openssl genrsa 2048 > $@ 2>/dev/null |
| 98 | |
| 99 | $(ROTPK_HASH): $(ROT_KEY) |
| 100 | @echo " OPENSSL $@" |
| 101 | $(Q)openssl rsa -in $< -pubout -outform DER 2>/dev/null |\ |
| 102 | openssl dgst -sha256 -binary > $@ 2>/dev/null |
| 103 | |
Masahiro Yamada | 574388c | 2016-09-03 11:37:40 +0900 | [diff] [blame] | 104 | endif |
| 105 | |
Masahiro Yamada | 4ff71af | 2018-01-26 11:42:01 +0900 | [diff] [blame] | 106 | ifeq (${FIP_GZIP},1) |
| 107 | |
| 108 | include lib/zlib/zlib.mk |
| 109 | |
| 110 | BL2_SOURCES += common/image_decompress.c \ |
| 111 | $(ZLIB_SOURCES) |
| 112 | |
| 113 | $(eval $(call add_define,UNIPHIER_DECOMPRESS_GZIP)) |
| 114 | |
| 115 | # compress all images loaded by BL2 |
| 116 | SCP_BL2_PRE_TOOL_FILTER := GZIP |
| 117 | BL31_PRE_TOOL_FILTER := GZIP |
| 118 | BL32_PRE_TOOL_FILTER := GZIP |
| 119 | BL33_PRE_TOOL_FILTER := GZIP |
| 120 | |
| 121 | endif |
| 122 | |
Masahiro Yamada | 75bfecb | 2017-12-19 11:56:05 +0900 | [diff] [blame] | 123 | .PHONY: bl2_gzip |
| 124 | bl2_gzip: $(BUILD_PLAT)/bl2.bin.gz |
| 125 | %.gz: % |
Masahiro Yamada | e56b5cd | 2017-12-20 01:37:15 +0900 | [diff] [blame] | 126 | @echo " GZIP $@" |
Masahiro Yamada | b13af2e | 2018-01-04 12:59:11 +0900 | [diff] [blame] | 127 | $(Q)gzip -n -f -9 $< --stdout > $@ |