1# 2# Copyright (c) 2017-2022, ARM Limited and Contributors. All rights reserved. 3# 4# SPDX-License-Identifier: BSD-3-Clause 5# 6 7# We don't use BL1 or BL2, so BL31 is the first image to execute 8RESET_TO_BL31 := 1 9# Only one core starts up at first 10COLD_BOOT_SINGLE_CPU := 1 11# We can choose where a core starts executing 12PROGRAMMABLE_RESET_ADDRESS:= 1 13 14# ARM coherency is managed in hardware 15WARMBOOT_ENABLE_DCACHE_EARLY := 1 16 17# A53 erratum for SoC. (enable them all) 18ERRATA_A53_826319 := 1 19ERRATA_A53_835769 := 1 20ERRATA_A53_836870 := 1 21ERRATA_A53_843419 := 1 22ERRATA_A53_855873 := 1 23ERRATA_A53_1530924 := 1 24 25# A72 Erratum for SoC 26ERRATA_A72_859971 := 1 27ERRATA_A72_1319367 := 1 28 29CRASH_REPORTING := 1 30 31# Split out RO data into a non-executable section 32SEPARATE_CODE_AND_RODATA := 1 33 34# Generate a Position Independent Executable 35ENABLE_PIE := 1 36 37TI_16550_MDR_QUIRK := 1 38$(eval $(call add_define,TI_16550_MDR_QUIRK)) 39 40K3_USART := 0 41$(eval $(call add_define,K3_USART)) 42 43# Allow customizing the UART baud rate 44K3_USART_BAUD := 115200 45$(eval $(call add_define,K3_USART_BAUD)) 46 47# Libraries 48include lib/xlat_tables_v2/xlat_tables.mk 49 50PLAT_INCLUDES += \ 51 -I${PLAT_PATH}/include \ 52 -Idrivers/ti/ti_sci \ 53 54K3_CONSOLE_SOURCES += \ 55 drivers/ti/uart/aarch64/16550_console.S \ 56 plat/ti/common/k3_console.c \ 57 58# Include GICv3 driver files 59include drivers/arm/gic/v3/gicv3.mk 60 61K3_GIC_SOURCES += \ 62 ${GICV3_SOURCES} \ 63 plat/common/plat_gicv3.c \ 64 plat/ti/common/k3_gicv3.c \ 65 66K3_PSCI_SOURCES += \ 67 plat/common/plat_psci_common.c \ 68 69 70K3_TI_SCI_SOURCES += \ 71 drivers/ti/ti_sci/ti_sci.c \ 72 73PLAT_BL_COMMON_SOURCES += \ 74 lib/cpus/aarch64/cortex_a53.S \ 75 lib/cpus/aarch64/cortex_a72.S \ 76 ${XLAT_TABLES_LIB_SRCS} \ 77 ${K3_CONSOLE_SOURCES} \ 78 79BL31_SOURCES += \ 80 plat/ti/common/ti_bl31_setup.c \ 81 plat/ti/common/k3_helpers.S \ 82 ${K3_GIC_SOURCES} \ 83 ${K3_TI_SCI_SOURCES} \ 84