blob: d8354368d3b0ce7edad9461f7bce781546c75594 [file] [log] [blame]
Nishanth Menon0192f892016-10-14 01:13:34 +00001#
2# Copyright (c) 2017-2018, 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# System coherency is managed in hardware
Andrew F. Davis7c461d72018-10-12 15:37:04 -050015HW_ASSISTED_COHERENCY := 1
Nishanth Menon0192f892016-10-14 01:13:34 +000016USE_COHERENT_MEM := 0
17
Nishanth Menon0192f892016-10-14 01:13:34 +000018# A53 erratum for SoC. (enable them all)
19ERRATA_A53_826319 := 1
20ERRATA_A53_835769 := 1
21ERRATA_A53_836870 := 1
22ERRATA_A53_843419 := 1
23ERRATA_A53_855873 := 1
24
Andrew F. Davis7c461d72018-10-12 15:37:04 -050025# Leave the caches enabled on core powerdown path
26TI_AM65X_WORKAROUND := 1
27$(eval $(call add_define,TI_AM65X_WORKAROUND))
28
Nishanth Menonce976042016-10-14 01:13:44 +000029MULTI_CONSOLE_API := 1
30TI_16550_MDR_QUIRK := 1
31$(eval $(call add_define,TI_16550_MDR_QUIRK))
32
Nishanth Menon3ed1b282016-10-14 01:13:45 +000033# Libraries
34include lib/xlat_tables_v2/xlat_tables.mk
35
Nishanth Menon0192f892016-10-14 01:13:34 +000036PLAT_INCLUDES += \
37 -I${PLAT_PATH}/include \
38 -Iinclude/plat/arm/common/ \
39 -Iinclude/plat/arm/common/aarch64/ \
Andrew F. Davis537d3ff2018-05-04 19:06:08 +000040 -I${PLAT_PATH}/common/drivers/sec_proxy \
Andrew F. Davisa513b2a2018-05-04 19:06:09 +000041 -I${PLAT_PATH}/common/drivers/ti_sci \
Nishanth Menon0192f892016-10-14 01:13:34 +000042
Nishanth Menonce976042016-10-14 01:13:44 +000043K3_CONSOLE_SOURCES += \
44 drivers/console/aarch64/console.S \
45 drivers/ti/uart/aarch64/16550_console.S \
46 ${PLAT_PATH}/common/k3_console.c \
47
Nishanth Menonf97ad372016-10-14 01:13:49 +000048K3_GIC_SOURCES += \
49 drivers/arm/gic/common/gic_common.c \
50 drivers/arm/gic/v3/gicv3_main.c \
51 drivers/arm/gic/v3/gicv3_helpers.c \
52 plat/common/plat_gicv3.c \
53 ${PLAT_PATH}/common/k3_gicv3.c \
54
Benjamin Faira42b61b2016-10-14 01:13:46 +000055K3_PSCI_SOURCES += \
56 plat/common/plat_psci_common.c \
57 ${PLAT_PATH}/common/k3_psci.c \
58
Andrew F. Davis537d3ff2018-05-04 19:06:08 +000059K3_SEC_PROXY_SOURCES += \
60 ${PLAT_PATH}/common/drivers/sec_proxy/sec_proxy.c \
61
Andrew F. Davisa513b2a2018-05-04 19:06:09 +000062K3_TI_SCI_SOURCES += \
63 ${PLAT_PATH}/common/drivers/ti_sci/ti_sci.c \
64
Nishanth Menon0192f892016-10-14 01:13:34 +000065PLAT_BL_COMMON_SOURCES += \
Nishanth Menon3ed1b282016-10-14 01:13:45 +000066 plat/arm/common/arm_common.c \
Nishanth Menon0192f892016-10-14 01:13:34 +000067 lib/cpus/aarch64/cortex_a53.S \
Nishanth Menon3ed1b282016-10-14 01:13:45 +000068 ${XLAT_TABLES_LIB_SRCS} \
Nishanth Menonce976042016-10-14 01:13:44 +000069 ${K3_CONSOLE_SOURCES} \
Nishanth Menon0192f892016-10-14 01:13:34 +000070
71BL31_SOURCES += \
72 ${PLAT_PATH}/common/k3_bl31_setup.c \
Benjamin Fairf807a342016-10-18 14:32:06 -050073 ${PLAT_PATH}/common/k3_helpers.S \
Benjamin Fair42eea872016-10-14 01:13:47 +000074 ${PLAT_PATH}/common/k3_topology.c \
Nishanth Menonf97ad372016-10-14 01:13:49 +000075 ${K3_GIC_SOURCES} \
Benjamin Faira42b61b2016-10-14 01:13:46 +000076 ${K3_PSCI_SOURCES} \
Andrew F. Davis537d3ff2018-05-04 19:06:08 +000077 ${K3_SEC_PROXY_SOURCES} \
Andrew F. Davisa513b2a2018-05-04 19:06:09 +000078 ${K3_TI_SCI_SOURCES} \