1619bc13eSMichal Simek# Copyright (c) 2018-2021, Arm Limited and Contributors. All rights reserved. 209ac1ca2SMaheedhar Bollapalli# Copyright (c) 2022-2024, Advanced Micro Devices, Inc. All rights reserved. 3f91c3cb1SSiva Durga Prasad Paladugu# 4f91c3cb1SSiva Durga Prasad Paladugu# SPDX-License-Identifier: BSD-3-Clause 5f91c3cb1SSiva Durga Prasad Paladugu 6f91c3cb1SSiva Durga Prasad Paladuguoverride PROGRAMMABLE_RESET_ADDRESS := 1 7f91c3cb1SSiva Durga Prasad PaladuguPSCI_EXTENDED_STATE_ID := 1 8f91c3cb1SSiva Durga Prasad PaladuguA53_DISABLE_NON_TEMPORAL_HINT := 0 9f91c3cb1SSiva Durga Prasad PaladuguSEPARATE_CODE_AND_RODATA := 1 10f91c3cb1SSiva Durga Prasad Paladuguoverride RESET_TO_BL31 := 1 11f91c3cb1SSiva Durga Prasad PaladuguPL011_GENERIC_UART := 1 12654bd99dSVenkatesh Yadav AbbarapuIPI_CRC_CHECK := 0 13302b4dfbSVenkatesh Yadav AbbarapuHARDEN_SLS_ALL := 0 14ade92a64SJay BuddhabhattiCPU_PWRDWN_SGI ?= 6 15ade92a64SJay Buddhabhatti$(eval $(call add_define_val,CPU_PWR_DOWN_REQ_INTR,ARM_IRQ_SEC_SGI_${CPU_PWRDWN_SGI})) 16f91c3cb1SSiva Durga Prasad Paladugu 17769446a6SMichal Simek# A72 Erratum for SoC 18769446a6SMichal SimekERRATA_A72_859971 := 1 19769446a6SMichal SimekERRATA_A72_1319367 := 1 20769446a6SMichal Simek 21f91c3cb1SSiva Durga Prasad Paladuguifdef VERSAL_ATF_MEM_BASE 22f91c3cb1SSiva Durga Prasad Paladugu $(eval $(call add_define,VERSAL_ATF_MEM_BASE)) 23f91c3cb1SSiva Durga Prasad Paladugu 24f91c3cb1SSiva Durga Prasad Paladugu ifndef VERSAL_ATF_MEM_SIZE 25*1e2a5e28SMichal Simek $(error "VERSAL_ATF_MEM_BASE defined without VERSAL_ATF_MEM_SIZE") 26f91c3cb1SSiva Durga Prasad Paladugu endif 27f91c3cb1SSiva Durga Prasad Paladugu $(eval $(call add_define,VERSAL_ATF_MEM_SIZE)) 28f91c3cb1SSiva Durga Prasad Paladugu 29f91c3cb1SSiva Durga Prasad Paladugu ifdef VERSAL_ATF_MEM_PROGBITS_SIZE 30f91c3cb1SSiva Durga Prasad Paladugu $(eval $(call add_define,VERSAL_ATF_MEM_PROGBITS_SIZE)) 31f91c3cb1SSiva Durga Prasad Paladugu endif 32f91c3cb1SSiva Durga Prasad Paladuguendif 33f91c3cb1SSiva Durga Prasad Paladugu 34f91c3cb1SSiva Durga Prasad Paladuguifdef VERSAL_BL32_MEM_BASE 35f91c3cb1SSiva Durga Prasad Paladugu $(eval $(call add_define,VERSAL_BL32_MEM_BASE)) 36f91c3cb1SSiva Durga Prasad Paladugu 37f91c3cb1SSiva Durga Prasad Paladugu ifndef VERSAL_BL32_MEM_SIZE 38*1e2a5e28SMichal Simek $(error "VERSAL_BL32_MEM_BASE defined without VERSAL_BL32_MEM_SIZE") 39f91c3cb1SSiva Durga Prasad Paladugu endif 40f91c3cb1SSiva Durga Prasad Paladugu $(eval $(call add_define,VERSAL_BL32_MEM_SIZE)) 41f91c3cb1SSiva Durga Prasad Paladuguendif 42f91c3cb1SSiva Durga Prasad Paladugu 43654bd99dSVenkatesh Yadav Abbarapuifdef IPI_CRC_CHECK 44654bd99dSVenkatesh Yadav Abbarapu $(eval $(call add_define,IPI_CRC_CHECK)) 45654bd99dSVenkatesh Yadav Abbarapuendif 46654bd99dSVenkatesh Yadav Abbarapu 4709ac1ca2SMaheedhar Bollapalliifdef VERSAL_PLATFORM 4809ac1ca2SMaheedhar Bollapalli $(warning "VERSAL_PLATFORM has been deprecated") 4909ac1ca2SMaheedhar Bollapalliendif 50f91c3cb1SSiva Durga Prasad Paladugu 5156d1857eSAmit Nagalifdef XILINX_OF_BOARD_DTB_ADDR 5256d1857eSAmit Nagal$(eval $(call add_define,XILINX_OF_BOARD_DTB_ADDR)) 5356d1857eSAmit Nagalendif 5456d1857eSAmit Nagal 557ca7fb1bSAmit NagalPLAT_XLAT_TABLES_DYNAMIC := 0 567ca7fb1bSAmit Nagalifeq (${PLAT_XLAT_TABLES_DYNAMIC},1) 577ca7fb1bSAmit Nagal$(eval $(call add_define,PLAT_XLAT_TABLES_DYNAMIC)) 587ca7fb1bSAmit Nagalendif 597ca7fb1bSAmit Nagal 600375188aSAmit Nagal# enable assert() for release/debug builds 610375188aSAmit NagalENABLE_ASSERTIONS := 1 620375188aSAmit Nagal 635a8ffeabSTejas PatelPLAT_INCLUDES := -Iinclude/plat/arm/common/ \ 645a8ffeabSTejas Patel -Iplat/xilinx/common/include/ \ 656e2f0d10SWendy Liang -Iplat/xilinx/common/ipi_mailbox_service/ \ 66c73a90e5STejas Patel -Iplat/xilinx/versal/include/ \ 67c73a90e5STejas Patel -Iplat/xilinx/versal/pm_service/ 68f91c3cb1SSiva Durga Prasad Paladugu 6956d1857eSAmit Nagalinclude lib/libfdt/libfdt.mk 70a6ea06f5SAlexei Fedorov# Include GICv3 driver files 71a6ea06f5SAlexei Fedorovinclude drivers/arm/gic/v3/gicv3.mk 720e9f54e5SMichal Simekinclude lib/xlat_tables_v2/xlat_tables.mk 73a6ea06f5SAlexei Fedorov 740e9f54e5SMichal SimekPLAT_BL_COMMON_SOURCES := drivers/arm/dcc/dcc_console.c \ 75f91c3cb1SSiva Durga Prasad Paladugu drivers/delay_timer/delay_timer.c \ 76f91c3cb1SSiva Durga Prasad Paladugu drivers/delay_timer/generic_delay_timer.c \ 77a6ea06f5SAlexei Fedorov ${GICV3_SOURCES} \ 78f91c3cb1SSiva Durga Prasad Paladugu drivers/arm/pl011/aarch64/pl011_console.S \ 792cc97771SAmbroise Vincent plat/common/aarch64/crash_console_helpers.S \ 805a8ffeabSTejas Patel plat/arm/common/arm_cci.c \ 8131ce893eSVenkatesh Yadav Abbarapu plat/arm/common/arm_common.c \ 82f91c3cb1SSiva Durga Prasad Paladugu plat/common/plat_gicv3.c \ 83f91c3cb1SSiva Durga Prasad Paladugu plat/xilinx/versal/aarch64/versal_helpers.S \ 840e9f54e5SMichal Simek plat/xilinx/versal/aarch64/versal_common.c \ 850e9f54e5SMichal Simek ${XLAT_TABLES_LIB_SRCS} 86f91c3cb1SSiva Durga Prasad Paladugu 870b25f404SVenkatesh Yadav AbbarapuVERSAL_CONSOLE ?= pl011 880b25f404SVenkatesh Yadav Abbarapuifeq (${VERSAL_CONSOLE}, $(filter ${VERSAL_CONSOLE},pl011 pl011_0 pl011_1 dcc)) 890b25f404SVenkatesh Yadav Abbarapuelse 900b25f404SVenkatesh Yadav Abbarapu $(error "Please define VERSAL_CONSOLE") 910b25f404SVenkatesh Yadav Abbarapuendif 920b25f404SVenkatesh Yadav Abbarapu 930b25f404SVenkatesh Yadav Abbarapu$(eval $(call add_define_val,VERSAL_CONSOLE,VERSAL_CONSOLE_ID_${VERSAL_CONSOLE})) 940b25f404SVenkatesh Yadav Abbarapu 955a8ffeabSTejas PatelBL31_SOURCES += drivers/arm/cci/cci.c \ 96f91c3cb1SSiva Durga Prasad Paladugu lib/cpus/aarch64/cortex_a72.S \ 977c36fbccSPrasad Kummari common/fdt_wrappers.c \ 98f91c3cb1SSiva Durga Prasad Paladugu plat/common/plat_psci_common.c \ 99c73a90e5STejas Patel plat/xilinx/common/ipi.c \ 10056d1857eSAmit Nagal plat/xilinx/common/plat_fdt.c \ 1017c36fbccSPrasad Kummari plat/xilinx/common/plat_console.c \ 102f000744eSPrasad Kummari plat/xilinx/common/plat_clkfunc.c \ 10331ce893eSVenkatesh Yadav Abbarapu plat/xilinx/common/plat_startup.c \ 1046e2f0d10SWendy Liang plat/xilinx/common/ipi_mailbox_service/ipi_mailbox_svc.c \ 105c73a90e5STejas Patel plat/xilinx/common/pm_service/pm_ipi.c \ 106a92681d9SJay Buddhabhatti plat/xilinx/common/pm_service/pm_api_sys.c \ 107a92681d9SJay Buddhabhatti plat/xilinx/common/pm_service/pm_svc_main.c \ 108079c6e24SAkshay Belsare plat/xilinx/common/versal.c \ 109f91c3cb1SSiva Durga Prasad Paladugu plat/xilinx/versal/bl31_versal_setup.c \ 110f91c3cb1SSiva Durga Prasad Paladugu plat/xilinx/versal/plat_psci.c \ 111f91c3cb1SSiva Durga Prasad Paladugu plat/xilinx/versal/plat_versal.c \ 112f91c3cb1SSiva Durga Prasad Paladugu plat/xilinx/versal/plat_topology.c \ 113f91c3cb1SSiva Durga Prasad Paladugu plat/xilinx/versal/sip_svc_setup.c \ 114c73a90e5STejas Patel plat/xilinx/versal/versal_gicv3.c \ 115c73a90e5STejas Patel plat/xilinx/versal/versal_ipi.c \ 11656d1857eSAmit Nagal plat/xilinx/versal/pm_service/pm_client.c \ 11756d1857eSAmit Nagal common/fdt_fixup.c \ 11856d1857eSAmit Nagal ${LIBFDT_SRCS} 119302b4dfbSVenkatesh Yadav Abbarapu 120302b4dfbSVenkatesh Yadav Abbarapuifeq ($(HARDEN_SLS_ALL), 1) 121302b4dfbSVenkatesh Yadav AbbarapuTF_CFLAGS_aarch64 += -mharden-sls=all 122302b4dfbSVenkatesh Yadav Abbarapuendif 123d766f994SPrasad Kummari 124d766f994SPrasad Kummariifeq (${ERRATA_ABI_SUPPORT}, 1) 125d766f994SPrasad Kummari# enable the cpu macros for errata abi interface 126d766f994SPrasad KummariCORTEX_A72_H_INC := 1 127d766f994SPrasad Kummari$(eval $(call add_define, CORTEX_A72_H_INC)) 128d766f994SPrasad Kummariendif 129