1150c38e8SSumit Garg# 2142ee34eSLauren Wehrmeister# Copyright (c) 2018-2025, Arm Limited and Contributors. All rights reserved. 3150c38e8SSumit Garg# 4150c38e8SSumit Garg# SPDX-License-Identifier: BSD-3-Clause 5150c38e8SSumit Garg# 6150c38e8SSumit Garg 7150c38e8SSumit Gargoverride PROGRAMMABLE_RESET_ADDRESS := 1 8150c38e8SSumit Gargoverride USE_COHERENT_MEM := 1 9150c38e8SSumit Gargoverride SEPARATE_CODE_AND_RODATA := 1 10150c38e8SSumit Gargoverride ENABLE_SVE_FOR_NS := 0 11150c38e8SSumit Garg# Enable workarounds for selected Cortex-A53 erratas. 12150c38e8SSumit GargERRATA_A53_855873 := 1 1348ab3904SJassi Brar 1448ab3904SJassi Brarifeq (${RESET_TO_BL31}, 1) 1548ab3904SJassi Braroverride RESET_TO_BL31 := 1 1648ab3904SJassi Braroverride TRUSTED_BOARD_BOOT := 0 17b67d2029SMasahisa KojimaSQ_USE_SCMI_DRIVER ?= 0 1848ab3904SJassi Brarelse 1948ab3904SJassi Braroverride RESET_TO_BL31 := 0 2042d4d3baSArvind Ram Prakashoverride RESET_TO_BL2 := 1 2148ab3904SJassi BrarSQ_USE_SCMI_DRIVER := 1 2248ab3904SJassi BrarBL2_CPPFLAGS += -DPLAT_XLAT_TABLES_DYNAMIC 2348ab3904SJassi Brarendif 24150c38e8SSumit Garg 25150c38e8SSumit Garg# Libraries 26150c38e8SSumit Garginclude lib/xlat_tables_v2/xlat_tables.mk 27150c38e8SSumit Garg 28357f28dbSLevi Yunifeq (${TRANSFER_LIST}, 1) 29357f28dbSLevi Yuninclude lib/transfer_list/transfer_list.mk 30357f28dbSLevi Yunendif 31357f28dbSLevi Yun 32357f28dbSLevi Yunifeq (${HOB_LIST}, 1) 33357f28dbSLevi Yuninclude lib/hob/hob.mk 34357f28dbSLevi Yunendif 35357f28dbSLevi Yun 36150c38e8SSumit GargPLAT_PATH := plat/socionext/synquacer 37150c38e8SSumit GargPLAT_INCLUDES := -I$(PLAT_PATH)/include \ 38150c38e8SSumit Garg -I$(PLAT_PATH)/drivers/scpi \ 39b67d2029SMasahisa Kojima -I$(PLAT_PATH)/drivers/mhu \ 40b67d2029SMasahisa Kojima -Idrivers/arm/css/scmi \ 41b67d2029SMasahisa Kojima -Idrivers/arm/css/scmi/vendor 42150c38e8SSumit Garg 43150c38e8SSumit GargPLAT_BL_COMMON_SOURCES += $(PLAT_PATH)/sq_helpers.S \ 44ce1f43acSAntonio Nino Diaz drivers/arm/pl011/aarch64/pl011_console.S \ 45150c38e8SSumit Garg drivers/delay_timer/delay_timer.c \ 46150c38e8SSumit Garg drivers/delay_timer/generic_delay_timer.c \ 473ba82d5fSJassi Brar lib/cpus/aarch64/cortex_a53.S \ 483ba82d5fSJassi Brar $(PLAT_PATH)/sq_xlat_setup.c \ 49150c38e8SSumit Garg ${XLAT_TABLES_LIB_SRCS} 50150c38e8SSumit Garg 51a6ea06f5SAlexei Fedorov# Include GICv3 driver files 52a6ea06f5SAlexei Fedorovinclude drivers/arm/gic/v3/gicv3.mk 53a6ea06f5SAlexei Fedorov 5448ab3904SJassi Brarifneq (${RESET_TO_BL31}, 1) 5548ab3904SJassi BrarBL2_SOURCES += common/desc_image_load.c \ 5648ab3904SJassi Brar drivers/io/io_fip.c \ 5748ab3904SJassi Brar drivers/io/io_memmap.c \ 5848ab3904SJassi Brar drivers/io/io_storage.c \ 5948ab3904SJassi Brar $(PLAT_PATH)/sq_bl2_setup.c \ 6048ab3904SJassi Brar $(PLAT_PATH)/sq_image_desc.c \ 6148ab3904SJassi Brar $(PLAT_PATH)/sq_io_storage.c 6219aaeea0SJassi Brar 6319aaeea0SJassi Brarifeq (${TRUSTED_BOARD_BOOT},1) 6419aaeea0SJassi Brarinclude drivers/auth/mbedtls/mbedtls_crypto.mk 6519aaeea0SJassi Brarinclude drivers/auth/mbedtls/mbedtls_x509.mk 66142ee34eSLauren WehrmeisterAUTH_MK := drivers/auth/auth.mk 67142ee34eSLauren Wehrmeister$(info Including ${AUTH_MK}) 68142ee34eSLauren Wehrmeisterinclude ${AUTH_MK} 69142ee34eSLauren Wehrmeister 70142ee34eSLauren WehrmeisterBL2_SOURCES += ${AUTH_SOURCES} \ 7119aaeea0SJassi Brar drivers/auth/tbbr/tbbr_cot_common.c \ 7219aaeea0SJassi Brar drivers/auth/tbbr/tbbr_cot_bl2.c \ 7319aaeea0SJassi Brar plat/common/tbbr/plat_tbbr.c \ 7419aaeea0SJassi Brar $(PLAT_PATH)/sq_rotpk.S \ 7519aaeea0SJassi Brar $(PLAT_PATH)/sq_tbbr.c 7619aaeea0SJassi Brar 7719aaeea0SJassi BrarROT_KEY = $(BUILD_PLAT)/rot_key.pem 7819aaeea0SJassi BrarROTPK_HASH = $(BUILD_PLAT)/rotpk_sha256.bin 7919aaeea0SJassi Brar 8019aaeea0SJassi Brar$(eval $(call add_define_val,ROTPK_HASH,'"$(ROTPK_HASH)"')) 8119aaeea0SJassi Brar$(BUILD_PLAT)/bl2/sq_rotpk.o: $(ROTPK_HASH) 8219aaeea0SJassi Brar 8319aaeea0SJassi Brarcertificates: $(ROT_KEY) 847a95759fSChris Kay$(ROT_KEY): | $$(@D)/ 857c4e1eeaSChris Kay $(s)echo " OPENSSL $@" 867c4e1eeaSChris Kay $(q)${OPENSSL_BIN_PATH}/openssl genrsa 2048 > $@ 2>/dev/null 8719aaeea0SJassi Brar 887a95759fSChris Kay$(ROTPK_HASH): $(ROT_KEY) | $$(@D)/ 897c4e1eeaSChris Kay $(s)echo " OPENSSL $@" 907c4e1eeaSChris Kay $(q)${OPENSSL_BIN_PATH}/openssl rsa -in $< -pubout -outform DER 2>/dev/null |\ 91e95abc4cSSalome Thirot ${OPENSSL_BIN_PATH}/openssl dgst -sha256 -binary > $@ 2>/dev/null 9219aaeea0SJassi Brar 9319aaeea0SJassi Brarendif # TRUSTED_BOARD_BOOT 9448ab3904SJassi Brarendif 9548ab3904SJassi Brar 96150c38e8SSumit GargBL31_SOURCES += drivers/arm/ccn/ccn.c \ 97a6ea06f5SAlexei Fedorov ${GICV3_SOURCES} \ 98150c38e8SSumit Garg plat/common/plat_gicv3.c \ 99150c38e8SSumit Garg plat/common/plat_psci_common.c \ 100150c38e8SSumit Garg $(PLAT_PATH)/sq_bl31_setup.c \ 101150c38e8SSumit Garg $(PLAT_PATH)/sq_ccn.c \ 102150c38e8SSumit Garg $(PLAT_PATH)/sq_topology.c \ 103150c38e8SSumit Garg $(PLAT_PATH)/sq_psci.c \ 104150c38e8SSumit Garg $(PLAT_PATH)/sq_gicv3.c \ 105b67d2029SMasahisa Kojima $(PLAT_PATH)/drivers/scp/sq_scp.c 106b67d2029SMasahisa Kojima 107b67d2029SMasahisa Kojimaifeq (${SQ_USE_SCMI_DRIVER},0) 108b67d2029SMasahisa KojimaBL31_SOURCES += $(PLAT_PATH)/drivers/scpi/sq_scpi.c \ 109150c38e8SSumit Garg $(PLAT_PATH)/drivers/mhu/sq_mhu.c 110b67d2029SMasahisa Kojimaelse 111b67d2029SMasahisa KojimaBL31_SOURCES += $(PLAT_PATH)/drivers/scp/sq_scmi.c \ 112b67d2029SMasahisa Kojima drivers/arm/css/scmi/scmi_common.c \ 113b67d2029SMasahisa Kojima drivers/arm/css/scmi/scmi_pwr_dmn_proto.c \ 114b67d2029SMasahisa Kojima drivers/arm/css/scmi/scmi_sys_pwr_proto.c \ 115b67d2029SMasahisa Kojima drivers/arm/css/scmi/vendor/scmi_sq.c \ 116b67d2029SMasahisa Kojima drivers/arm/css/mhu/css_mhu_doorbell.c 117b67d2029SMasahisa Kojimaendif 118434454a2SArd Biesheuvel 1193f3c341aSPaul Beesleyifeq (${SPM_MM},1) 120*5be66449SBoyan KaratotevPLAT_EXTRA_LD_SCRIPT := 1 121434454a2SArd Biesheuvel 122434454a2SArd BiesheuvelBL31_SOURCES += $(PLAT_PATH)/sq_spm.c 123434454a2SArd Biesheuvelendif 124b67d2029SMasahisa Kojima 125b67d2029SMasahisa Kojimaifeq (${SQ_USE_SCMI_DRIVER},1) 126b67d2029SMasahisa Kojima$(eval $(call add_define,SQ_USE_SCMI_DRIVER)) 127b67d2029SMasahisa Kojimaendif 128