1# 2# Copyright (c) 2018-2022, ARM Limited and Contributors. All rights reserved. 3# 4# SPDX-License-Identifier: BSD-3-Clause 5# 6 7override PROGRAMMABLE_RESET_ADDRESS := 1 8override USE_COHERENT_MEM := 1 9override SEPARATE_CODE_AND_RODATA := 1 10override ENABLE_SVE_FOR_NS := 0 11# Enable workarounds for selected Cortex-A53 erratas. 12ERRATA_A53_855873 := 1 13 14ifeq (${RESET_TO_BL31}, 1) 15override RESET_TO_BL31 := 1 16override TRUSTED_BOARD_BOOT := 0 17SQ_USE_SCMI_DRIVER ?= 0 18else 19override RESET_TO_BL31 := 0 20override BL2_AT_EL3 := 1 21SQ_USE_SCMI_DRIVER := 1 22BL2_CPPFLAGS += -DPLAT_XLAT_TABLES_DYNAMIC 23endif 24 25# Libraries 26include lib/xlat_tables_v2/xlat_tables.mk 27 28PLAT_PATH := plat/socionext/synquacer 29PLAT_INCLUDES := -I$(PLAT_PATH)/include \ 30 -I$(PLAT_PATH)/drivers/scpi \ 31 -I$(PLAT_PATH)/drivers/mhu \ 32 -Idrivers/arm/css/scmi \ 33 -Idrivers/arm/css/scmi/vendor 34 35PLAT_BL_COMMON_SOURCES += $(PLAT_PATH)/sq_helpers.S \ 36 drivers/arm/pl011/aarch64/pl011_console.S \ 37 drivers/delay_timer/delay_timer.c \ 38 drivers/delay_timer/generic_delay_timer.c \ 39 lib/cpus/aarch64/cortex_a53.S \ 40 $(PLAT_PATH)/sq_xlat_setup.c \ 41 ${XLAT_TABLES_LIB_SRCS} 42 43# Include GICv3 driver files 44include drivers/arm/gic/v3/gicv3.mk 45 46ifneq (${RESET_TO_BL31}, 1) 47BL2_SOURCES += common/desc_image_load.c \ 48 drivers/io/io_fip.c \ 49 drivers/io/io_memmap.c \ 50 drivers/io/io_storage.c \ 51 $(PLAT_PATH)/sq_bl2_setup.c \ 52 $(PLAT_PATH)/sq_image_desc.c \ 53 $(PLAT_PATH)/sq_io_storage.c 54endif 55 56BL31_SOURCES += drivers/arm/ccn/ccn.c \ 57 ${GICV3_SOURCES} \ 58 plat/common/plat_gicv3.c \ 59 plat/common/plat_psci_common.c \ 60 $(PLAT_PATH)/sq_bl31_setup.c \ 61 $(PLAT_PATH)/sq_ccn.c \ 62 $(PLAT_PATH)/sq_topology.c \ 63 $(PLAT_PATH)/sq_psci.c \ 64 $(PLAT_PATH)/sq_gicv3.c \ 65 $(PLAT_PATH)/drivers/scp/sq_scp.c 66 67ifeq (${SQ_USE_SCMI_DRIVER},0) 68BL31_SOURCES += $(PLAT_PATH)/drivers/scpi/sq_scpi.c \ 69 $(PLAT_PATH)/drivers/mhu/sq_mhu.c 70else 71BL31_SOURCES += $(PLAT_PATH)/drivers/scp/sq_scmi.c \ 72 drivers/arm/css/scmi/scmi_common.c \ 73 drivers/arm/css/scmi/scmi_pwr_dmn_proto.c \ 74 drivers/arm/css/scmi/scmi_sys_pwr_proto.c \ 75 drivers/arm/css/scmi/vendor/scmi_sq.c \ 76 drivers/arm/css/mhu/css_mhu_doorbell.c 77endif 78 79ifeq (${SPM_MM},1) 80$(eval $(call add_define,PLAT_EXTRA_LD_SCRIPT)) 81 82BL31_SOURCES += $(PLAT_PATH)/sq_spm.c 83endif 84 85ifeq (${SQ_USE_SCMI_DRIVER},1) 86$(eval $(call add_define,SQ_USE_SCMI_DRIVER)) 87endif 88