1*91f16700Schasinglulu# 2*91f16700Schasinglulu# Copyright (c) 2017-2022, ARM Limited and Contributors. All rights reserved. 3*91f16700Schasinglulu# 4*91f16700Schasinglulu# SPDX-License-Identifier: BSD-3-Clause 5*91f16700Schasinglulu# 6*91f16700Schasinglulu 7*91f16700Schasinglulu# We don't use BL1 or BL2, so BL31 is the first image to execute 8*91f16700SchasingluluRESET_TO_BL31 := 1 9*91f16700Schasinglulu# Only one core starts up at first 10*91f16700SchasingluluCOLD_BOOT_SINGLE_CPU := 1 11*91f16700Schasinglulu# We can choose where a core starts executing 12*91f16700SchasingluluPROGRAMMABLE_RESET_ADDRESS:= 1 13*91f16700Schasinglulu 14*91f16700Schasinglulu# ARM coherency is managed in hardware 15*91f16700SchasingluluWARMBOOT_ENABLE_DCACHE_EARLY := 1 16*91f16700Schasinglulu 17*91f16700Schasinglulu# A53 erratum for SoC. (enable them all) 18*91f16700SchasingluluERRATA_A53_826319 := 1 19*91f16700SchasingluluERRATA_A53_835769 := 1 20*91f16700SchasingluluERRATA_A53_836870 := 1 21*91f16700SchasingluluERRATA_A53_843419 := 1 22*91f16700SchasingluluERRATA_A53_855873 := 1 23*91f16700SchasingluluERRATA_A53_1530924 := 1 24*91f16700Schasinglulu 25*91f16700Schasinglulu# A72 Erratum for SoC 26*91f16700SchasingluluERRATA_A72_859971 := 1 27*91f16700SchasingluluERRATA_A72_1319367 := 1 28*91f16700Schasinglulu 29*91f16700SchasingluluCRASH_REPORTING := 1 30*91f16700Schasinglulu 31*91f16700Schasinglulu# Split out RO data into a non-executable section 32*91f16700SchasingluluSEPARATE_CODE_AND_RODATA := 1 33*91f16700Schasinglulu 34*91f16700Schasinglulu# Generate a Position Independent Executable 35*91f16700SchasingluluENABLE_PIE := 1 36*91f16700Schasinglulu 37*91f16700SchasingluluTI_16550_MDR_QUIRK := 1 38*91f16700Schasinglulu$(eval $(call add_define,TI_16550_MDR_QUIRK)) 39*91f16700Schasinglulu 40*91f16700SchasingluluK3_USART := 0 41*91f16700Schasinglulu$(eval $(call add_define,K3_USART)) 42*91f16700Schasinglulu 43*91f16700Schasinglulu# Allow customizing the UART baud rate 44*91f16700SchasingluluK3_USART_BAUD := 115200 45*91f16700Schasinglulu$(eval $(call add_define,K3_USART_BAUD)) 46*91f16700Schasinglulu 47*91f16700Schasinglulu# Libraries 48*91f16700Schasingluluinclude lib/xlat_tables_v2/xlat_tables.mk 49*91f16700Schasinglulu 50*91f16700SchasingluluPLAT_INCLUDES += \ 51*91f16700Schasinglulu -I${PLAT_PATH}/include \ 52*91f16700Schasinglulu -I${PLAT_PATH}/common/drivers/sec_proxy \ 53*91f16700Schasinglulu -I${PLAT_PATH}/common/drivers/ti_sci \ 54*91f16700Schasinglulu 55*91f16700SchasingluluK3_CONSOLE_SOURCES += \ 56*91f16700Schasinglulu drivers/ti/uart/aarch64/16550_console.S \ 57*91f16700Schasinglulu ${PLAT_PATH}/common/k3_console.c \ 58*91f16700Schasinglulu 59*91f16700Schasinglulu# Include GICv3 driver files 60*91f16700Schasingluluinclude drivers/arm/gic/v3/gicv3.mk 61*91f16700Schasinglulu 62*91f16700SchasingluluK3_GIC_SOURCES += \ 63*91f16700Schasinglulu ${GICV3_SOURCES} \ 64*91f16700Schasinglulu plat/common/plat_gicv3.c \ 65*91f16700Schasinglulu ${PLAT_PATH}/common/k3_gicv3.c \ 66*91f16700Schasinglulu 67*91f16700SchasingluluK3_PSCI_SOURCES += \ 68*91f16700Schasinglulu plat/common/plat_psci_common.c \ 69*91f16700Schasinglulu ${PLAT_PATH}/common/k3_psci.c \ 70*91f16700Schasinglulu 71*91f16700SchasingluluK3_SEC_PROXY_SOURCES += \ 72*91f16700Schasinglulu ${PLAT_PATH}/common/drivers/sec_proxy/sec_proxy.c \ 73*91f16700Schasinglulu 74*91f16700SchasingluluK3_TI_SCI_SOURCES += \ 75*91f16700Schasinglulu ${PLAT_PATH}/common/drivers/ti_sci/ti_sci.c \ 76*91f16700Schasinglulu 77*91f16700SchasingluluPLAT_BL_COMMON_SOURCES += \ 78*91f16700Schasinglulu lib/cpus/aarch64/cortex_a53.S \ 79*91f16700Schasinglulu lib/cpus/aarch64/cortex_a72.S \ 80*91f16700Schasinglulu ${XLAT_TABLES_LIB_SRCS} \ 81*91f16700Schasinglulu ${K3_CONSOLE_SOURCES} \ 82*91f16700Schasinglulu 83*91f16700SchasingluluBL31_SOURCES += \ 84*91f16700Schasinglulu ${PLAT_PATH}/common/k3_bl31_setup.c \ 85*91f16700Schasinglulu ${PLAT_PATH}/common/k3_helpers.S \ 86*91f16700Schasinglulu ${PLAT_PATH}/common/k3_topology.c \ 87*91f16700Schasinglulu ${K3_GIC_SOURCES} \ 88*91f16700Schasinglulu ${K3_PSCI_SOURCES} \ 89*91f16700Schasinglulu ${K3_SEC_PROXY_SOURCES} \ 90*91f16700Schasinglulu ${K3_TI_SCI_SOURCES} \ 91