100c7d5acSUsama Arif# 200c7d5acSUsama Arif# Copyright (c) 2019, Arm Limited. All rights reserved. 300c7d5acSUsama Arif# 400c7d5acSUsama Arif# SPDX-License-Identifier: BSD-3-Clause 500c7d5acSUsama Arif# 600c7d5acSUsama Arif 700c7d5acSUsama Arif# Add `libfdt` and Arm common helpers required for Dynamic Config 800c7d5acSUsama Arifinclude lib/libfdt/libfdt.mk 900c7d5acSUsama Arif 1000c7d5acSUsama ArifDYN_CFG_SOURCES += plat/arm/common/arm_dyn_cfg.c \ 1100c7d5acSUsama Arif plat/arm/common/arm_dyn_cfg_helpers.c \ 1200c7d5acSUsama Arif common/fdt_wrappers.c 1300c7d5acSUsama Arif 1400c7d5acSUsama ArifA5DS_GIC_SOURCES := drivers/arm/gic/common/gic_common.c \ 1500c7d5acSUsama Arif drivers/arm/gic/v2/gicv2_main.c \ 1600c7d5acSUsama Arif drivers/arm/gic/v2/gicv2_helpers.c \ 1700c7d5acSUsama Arif plat/common/plat_gicv2.c \ 1800c7d5acSUsama Arif plat/arm/common/arm_gicv2.c 1900c7d5acSUsama Arif 2000c7d5acSUsama ArifA5DS_SECURITY_SOURCES := plat/arm/board/a5ds/a5ds_security.c 2100c7d5acSUsama Arif 2200c7d5acSUsama ArifPLAT_INCLUDES := -Iplat/arm/board/a5ds/include 2300c7d5acSUsama Arif 2400c7d5acSUsama ArifPLAT_BL_COMMON_SOURCES := drivers/arm/pl011/${ARCH}/pl011_console.S \ 2500c7d5acSUsama Arif plat/arm/board/a5ds/a5ds_common.c \ 2600c7d5acSUsama Arif plat/arm/common/${ARCH}/arm_helpers.S \ 2700c7d5acSUsama Arif plat/arm/common/arm_common.c \ 2800c7d5acSUsama Arif plat/arm/common/arm_console.c \ 2900c7d5acSUsama Arif plat/arm/board/common/${ARCH}/board_arm_helpers.S 3000c7d5acSUsama Arif 3100c7d5acSUsama ArifA5DS_CPU_LIBS := lib/cpus/aarch32/cortex_a5.S 3200c7d5acSUsama Arif 3300c7d5acSUsama ArifBL1_SOURCES += drivers/io/io_fip.c \ 3400c7d5acSUsama Arif drivers/io/io_memmap.c \ 3500c7d5acSUsama Arif drivers/io/io_storage.c \ 3600c7d5acSUsama Arif drivers/cfi/v2m/v2m_flash.c \ 3700c7d5acSUsama Arif plat/arm/common/arm_bl1_setup.c \ 3800c7d5acSUsama Arif plat/arm/common/arm_err.c \ 39*37b70031SAmbroise Vincent plat/arm/board/a5ds/a5ds_err.c \ 4000c7d5acSUsama Arif plat/arm/common/arm_io_storage.c \ 4100c7d5acSUsama Arif plat/arm/board/a5ds/${ARCH}/a5ds_helpers.S \ 4200c7d5acSUsama Arif plat/arm/board/a5ds/a5ds_bl1_setup.c \ 4300c7d5acSUsama Arif lib/aarch32/arm32_aeabi_divmod.c \ 4400c7d5acSUsama Arif lib/aarch32/arm32_aeabi_divmod_a32.S \ 4500c7d5acSUsama Arif ${A5DS_CPU_LIBS} \ 4600c7d5acSUsama Arif ${DYN_CFG_SOURCES} 4700c7d5acSUsama Arif 4800c7d5acSUsama ArifBL2_SOURCES += lib/aarch32/arm32_aeabi_divmod.c \ 4900c7d5acSUsama Arif lib/aarch32/arm32_aeabi_divmod_a32.S \ 5000c7d5acSUsama Arif drivers/delay_timer/delay_timer.c \ 5100c7d5acSUsama Arif drivers/delay_timer/generic_delay_timer.c \ 5200c7d5acSUsama Arif drivers/cfi/v2m/v2m_flash.c \ 5300c7d5acSUsama Arif drivers/io/io_fip.c \ 5400c7d5acSUsama Arif drivers/io/io_memmap.c \ 5500c7d5acSUsama Arif drivers/io/io_storage.c \ 5600c7d5acSUsama Arif plat/arm/board/a5ds/a5ds_bl2_setup.c \ 5700c7d5acSUsama Arif plat/arm/common/arm_bl2_setup.c \ 5800c7d5acSUsama Arif plat/arm/common/arm_err.c \ 59*37b70031SAmbroise Vincent plat/arm/board/a5ds/a5ds_err.c \ 6000c7d5acSUsama Arif plat/arm/common/arm_io_storage.c \ 6100c7d5acSUsama Arif plat/arm/common/${ARCH}/arm_bl2_mem_params_desc.c \ 6200c7d5acSUsama Arif plat/arm/common/arm_image_load.c \ 6300c7d5acSUsama Arif common/desc_image_load.c \ 6400c7d5acSUsama Arif ${DYN_CFG_SOURCES} \ 6500c7d5acSUsama Arif ${A5DS_SECURITY_SOURCES} 6600c7d5acSUsama Arif 6700c7d5acSUsama Arif# Add the FDT_SOURCES and options for Dynamic Config (only for Unix env) 6800c7d5acSUsama Arififdef UNIX_MK 6900c7d5acSUsama Arif 7000c7d5acSUsama ArifFVP_TB_FW_CONFIG := ${BUILD_PLAT}/fdts/a5ds_tb_fw_config.dtb 7100c7d5acSUsama Arif 7200c7d5acSUsama Arif# Add the TB_FW_CONFIG to FIP and specify the same to certtool 7300c7d5acSUsama Arif$(eval $(call TOOL_ADD_PAYLOAD,${FVP_TB_FW_CONFIG},--tb-fw-config)) 7400c7d5acSUsama Arif 7500c7d5acSUsama Arif$(eval FVP_HW_CONFIG := ${BUILD_PLAT}/$(patsubst %.dts,%.dtb, \ 7600c7d5acSUsama Arif fdts/$(notdir ${FVP_HW_CONFIG_DTS}))) 7700c7d5acSUsama Arif# Add the HW_CONFIG to FIP and specify the same to certtool 7800c7d5acSUsama Arif$(eval $(call TOOL_ADD_PAYLOAD,${FVP_HW_CONFIG},--hw-config)) 7900c7d5acSUsama Arif 8000c7d5acSUsama ArifFDT_SOURCES += plat/arm/board/a5ds/fdts/a5ds_tb_fw_config.dts \ 8100c7d5acSUsama Arif ${FVP_HW_CONFIG_DTS} 8200c7d5acSUsama Arifendif 8300c7d5acSUsama Arif 8400c7d5acSUsama ArifNEED_BL32 := yes 8500c7d5acSUsama Arif 8600c7d5acSUsama ArifMULTI_CONSOLE_API := 1 8700c7d5acSUsama Arif 8800c7d5acSUsama ArifPLAT_BL_COMMON_SOURCES += lib/xlat_tables/aarch32/nonlpae_tables.c 8900c7d5acSUsama Arif 9000c7d5acSUsama Arif# Use translation tables library v1 when using Cortex-A5 9100c7d5acSUsama ArifARM_XLAT_TABLES_LIB_V1 := 1 9200c7d5acSUsama Arif$(eval $(call assert_boolean,ARM_XLAT_TABLES_LIB_V1)) 9300c7d5acSUsama Arif$(eval $(call add_define,ARM_XLAT_TABLES_LIB_V1)) 9400c7d5acSUsama Arif 9500c7d5acSUsama Arif$(eval $(call assert_boolean,ARM_DISABLE_TRUSTED_WDOG)) 9600c7d5acSUsama Arif$(eval $(call add_define,ARM_DISABLE_TRUSTED_WDOG)) 97