blob: 026d6a3f224a6378e374950ddc7156478ede55f5 [file] [log] [blame]
Nishanth Menon0192f892016-10-14 01:13:34 +00001#
Dave Gerlach33689952022-02-11 13:57:19 -06002# Copyright (c) 2017-2022, ARM Limited and Contributors. All rights reserved.
Nishanth Menon0192f892016-10-14 01:13:34 +00003#
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
Nishanth Menonb7a47ae2020-12-10 22:17:58 -060014# ARM coherency is managed in hardware
Andrew F. Davisf86a5de2019-04-25 14:02:33 -040015WARMBOOT_ENABLE_DCACHE_EARLY := 1
Nishanth Menon0192f892016-10-14 01:13:34 +000016
Nishanth Menon0192f892016-10-14 01:13:34 +000017# 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
Nishanth Menon3a285f02020-12-10 16:49:42 -060023ERRATA_A53_1530924 := 1
Nishanth Menon0192f892016-10-14 01:13:34 +000024
Nishanth Menon4f9ef162018-06-22 06:36:29 -050025# A72 Erratum for SoC
26ERRATA_A72_859971 := 1
Nishanth Menonb4251f12020-12-10 16:57:35 -060027ERRATA_A72_1319367 := 1
Nishanth Menon4f9ef162018-06-22 06:36:29 -050028
Andrew F. Davis8d19f1c2019-05-14 15:38:11 -050029CRASH_REPORTING := 1
Manish Pandey0e3379d2022-10-10 11:43:08 +010030HANDLE_EA_EL3_FIRST_NS := 1
Andrew F. Davis8d19f1c2019-05-14 15:38:11 -050031
Andrew F. Davis26e89122019-01-22 14:16:03 -060032# Split out RO data into a non-executable section
33SEPARATE_CODE_AND_RODATA := 1
34
Andrew F. Davis4ab7e012019-01-04 16:04:01 -060035# Generate a Position Independent Executable
36ENABLE_PIE := 1
37
Nishanth Menonce976042016-10-14 01:13:44 +000038TI_16550_MDR_QUIRK := 1
39$(eval $(call add_define,TI_16550_MDR_QUIRK))
40
Jan Kiszkab99c0782020-05-20 07:35:48 +020041K3_USART := 0
42$(eval $(call add_define,K3_USART))
43
Andreas Dannenberg5e6d1402019-01-14 13:20:15 -060044# Allow customizing the UART baud rate
45K3_USART_BAUD := 115200
46$(eval $(call add_define,K3_USART_BAUD))
47
Dave Gerlach33689952022-02-11 13:57:19 -060048# Enable system suspend modes
49K3_PM_SYSTEM_SUSPEND := 0
50$(eval $(call add_define,K3_PM_SYSTEM_SUSPEND))
51
Nishanth Menon3ed1b282016-10-14 01:13:45 +000052# Libraries
53include lib/xlat_tables_v2/xlat_tables.mk
54
Nishanth Menon0192f892016-10-14 01:13:34 +000055PLAT_INCLUDES += \
56 -I${PLAT_PATH}/include \
Andrew F. Davis537d3ff2018-05-04 19:06:08 +000057 -I${PLAT_PATH}/common/drivers/sec_proxy \
Andrew F. Davisa513b2a2018-05-04 19:06:09 +000058 -I${PLAT_PATH}/common/drivers/ti_sci \
Nishanth Menon0192f892016-10-14 01:13:34 +000059
Nishanth Menonce976042016-10-14 01:13:44 +000060K3_CONSOLE_SOURCES += \
Nishanth Menonce976042016-10-14 01:13:44 +000061 drivers/ti/uart/aarch64/16550_console.S \
62 ${PLAT_PATH}/common/k3_console.c \
63
Alexei Fedorov84f1b5d2020-03-23 18:45:17 +000064# Include GICv3 driver files
65include drivers/arm/gic/v3/gicv3.mk
66
Nishanth Menonf97ad372016-10-14 01:13:49 +000067K3_GIC_SOURCES += \
Alexei Fedorov84f1b5d2020-03-23 18:45:17 +000068 ${GICV3_SOURCES} \
Nishanth Menonf97ad372016-10-14 01:13:49 +000069 plat/common/plat_gicv3.c \
70 ${PLAT_PATH}/common/k3_gicv3.c \
71
Benjamin Faira42b61b2016-10-14 01:13:46 +000072K3_PSCI_SOURCES += \
73 plat/common/plat_psci_common.c \
74 ${PLAT_PATH}/common/k3_psci.c \
75
Andrew F. Davis537d3ff2018-05-04 19:06:08 +000076K3_SEC_PROXY_SOURCES += \
77 ${PLAT_PATH}/common/drivers/sec_proxy/sec_proxy.c \
78
Andrew F. Davisa513b2a2018-05-04 19:06:09 +000079K3_TI_SCI_SOURCES += \
80 ${PLAT_PATH}/common/drivers/ti_sci/ti_sci.c \
81
Nishanth Menon0192f892016-10-14 01:13:34 +000082PLAT_BL_COMMON_SOURCES += \
83 lib/cpus/aarch64/cortex_a53.S \
Nishanth Menon4f9ef162018-06-22 06:36:29 -050084 lib/cpus/aarch64/cortex_a72.S \
Nishanth Menon3ed1b282016-10-14 01:13:45 +000085 ${XLAT_TABLES_LIB_SRCS} \
Nishanth Menonce976042016-10-14 01:13:44 +000086 ${K3_CONSOLE_SOURCES} \
Nishanth Menon0192f892016-10-14 01:13:34 +000087
88BL31_SOURCES += \
89 ${PLAT_PATH}/common/k3_bl31_setup.c \
Benjamin Fairf807a342016-10-18 14:32:06 -050090 ${PLAT_PATH}/common/k3_helpers.S \
Benjamin Fair42eea872016-10-14 01:13:47 +000091 ${PLAT_PATH}/common/k3_topology.c \
Nishanth Menonf97ad372016-10-14 01:13:49 +000092 ${K3_GIC_SOURCES} \
Benjamin Faira42b61b2016-10-14 01:13:46 +000093 ${K3_PSCI_SOURCES} \
Andrew F. Davis537d3ff2018-05-04 19:06:08 +000094 ${K3_SEC_PROXY_SOURCES} \
Andrew F. Davisa513b2a2018-05-04 19:06:09 +000095 ${K3_TI_SCI_SOURCES} \