xref: /rk3399_ARM-atf/plat/nxp/s32/s32g274ardb2/platform.mk (revision d82c211d684271d57fcefeb43c4afc72c06f1bfd)
18b81a39eSGhennadi Procopciuc#
2e7905128SGhennadi Procopciuc# Copyright 2024-2025 NXP
38b81a39eSGhennadi Procopciuc#
48b81a39eSGhennadi Procopciuc# SPDX-License-Identifier: BSD-3-Clause
58b81a39eSGhennadi Procopciuc#
68b81a39eSGhennadi Procopciuc
78b81a39eSGhennadi Procopciucinclude drivers/arm/gic/v3/gicv3.mk
88b81a39eSGhennadi Procopciucinclude lib/xlat_tables_v2/xlat_tables.mk
98b81a39eSGhennadi Procopciuc
108b81a39eSGhennadi ProcopciucPLAT_DRIVERS_PATH := drivers/nxp
118b81a39eSGhennadi ProcopciucPLAT_COMMON_PATH  := plat/nxp/common
128b81a39eSGhennadi ProcopciucPLAT_S32G274ARDB2 := plat/nxp/s32/s32g274ardb2
138b81a39eSGhennadi Procopciuc
148b81a39eSGhennadi ProcopciucCONSOLE           := LINFLEX
158b81a39eSGhennadi Procopciuc
168b81a39eSGhennadi Procopciucinclude ${PLAT_COMMON_PATH}/plat_make_helper/plat_build_macros.mk
178b81a39eSGhennadi Procopciuc
18b47d085aSGhennadi Procopciuc# Flag to apply S32 erratum ERR051700. This erratum applies to all S32
19b47d085aSGhennadi Procopciuc# revisions.
20b47d085aSGhennadi ProcopciucS32_ERRATA_LIST += ERRATA_S32_051700
21b47d085aSGhennadi Procopciuc
228b81a39eSGhennadi ProcopciucPLAT_INCLUDES = \
23*d82c211dSGhennadi Procopciuc	-I${PLAT_S32G274ARDB2}/include \
24*d82c211dSGhennadi Procopciuc	-Idrivers/imx/usdhc \
258b81a39eSGhennadi Procopciuc
268b81a39eSGhennadi ProcopciucPROGRAMMABLE_RESET_ADDRESS := 1
278b81a39eSGhennadi Procopciuc
288b81a39eSGhennadi ProcopciucCOLD_BOOT_SINGLE_CPU := 0
298b81a39eSGhennadi Procopciuc
308b81a39eSGhennadi ProcopciucENABLE_SVE_FOR_NS := 0
318b81a39eSGhennadi Procopciuc
328b81a39eSGhennadi ProcopciucRESET_TO_BL2 := 1
338b81a39eSGhennadi Procopciuc
348b81a39eSGhennadi ProcopciucINIT_UNUSED_NS_EL2 := 1
358b81a39eSGhennadi Procopciuc
368b81a39eSGhennadi ProcopciucERRATA_A53_855873 := 1
378b81a39eSGhennadi ProcopciucERRATA_A53_836870 := 1
388b81a39eSGhennadi ProcopciucERRATA_A53_1530924 := 1
398b81a39eSGhennadi ProcopciucERRATA_SPECULATIVE_AT := 1
40cc6e9b01SGhennadi ProcopciucERRATA_S32_051700 := 1
418b81a39eSGhennadi Procopciuc
42a1e07b39SGhennadi ProcopciucPLAT_XLAT_TABLES_DYNAMIC := 1
43a1e07b39SGhennadi Procopciuc$(eval $(call add_define,PLAT_XLAT_TABLES_DYNAMIC))
44a1e07b39SGhennadi Procopciuc
45*d82c211dSGhennadi ProcopciucNXP_ESDHC_LE := 1
46*d82c211dSGhennadi Procopciuc$(eval $(call add_define,NXP_ESDHC_LE))
47*d82c211dSGhennadi Procopciuc
488b81a39eSGhennadi Procopciuc# Selecting Drivers for SoC
498b81a39eSGhennadi Procopciuc$(eval $(call SET_NXP_MAKE_FLAG,CONSOLE_NEEDED,BL_COMM))
50f1e4ac56SGhennadi Procopciuc$(eval $(call SET_NXP_MAKE_FLAG,CLK_NEEDED,BL_COMM))
518b81a39eSGhennadi Procopciuc
528b81a39eSGhennadi Procopciucinclude ${PLAT_DRIVERS_PATH}/drivers.mk
538b81a39eSGhennadi Procopciuc
548b81a39eSGhennadi ProcopciucBL_COMMON_SOURCES += \
558b81a39eSGhennadi Procopciuc	${PLAT_S32G274ARDB2}/plat_console.c \
568b81a39eSGhennadi Procopciuc	${PLAT_S32G274ARDB2}/plat_helpers.S \
57eb4d4185SGhennadi Procopciuc	${PLAT_S32G274ARDB2}/s32cc_bl_common.c \
58a1e07b39SGhennadi Procopciuc	${XLAT_TABLES_LIB_SRCS} \
598b81a39eSGhennadi Procopciuc
608b81a39eSGhennadi ProcopciucBL2_SOURCES += \
618b81a39eSGhennadi Procopciuc	${BL_COMMON_SOURCES} \
628b81a39eSGhennadi Procopciuc	${PLAT_S32G274ARDB2}/plat_bl2_el3_setup.c \
638b81a39eSGhennadi Procopciuc	${PLAT_S32G274ARDB2}/plat_bl2_image_desc.c \
648b81a39eSGhennadi Procopciuc	${PLAT_S32G274ARDB2}/plat_io_storage.c \
655071f7c7SGhennadi Procopciuc	${PLAT_S32G274ARDB2}/s32cc_ncore.c \
668b81a39eSGhennadi Procopciuc	common/desc_image_load.c \
67e7905128SGhennadi Procopciuc	drivers/delay_timer/delay_timer.c \
68e7905128SGhennadi Procopciuc	drivers/delay_timer/generic_delay_timer.c \
69*d82c211dSGhennadi Procopciuc	drivers/imx/usdhc/imx_usdhc.c \
708b81a39eSGhennadi Procopciuc	drivers/io/io_fip.c \
718b81a39eSGhennadi Procopciuc	drivers/io/io_memmap.c \
728b81a39eSGhennadi Procopciuc	drivers/io/io_storage.c \
73*d82c211dSGhennadi Procopciuc	drivers/mmc/mmc.c \
748b81a39eSGhennadi Procopciuc	lib/cpus/aarch64/cortex_a53.S \
758b81a39eSGhennadi Procopciuc
76e73c3c3aSGhennadi ProcopciucBL31_SOURCES += \
77e73c3c3aSGhennadi Procopciuc	${GICV3_SOURCES} \
78e73c3c3aSGhennadi Procopciuc	${PLAT_S32G274ARDB2}/plat_bl31_setup.c \
79e73c3c3aSGhennadi Procopciuc	${PLAT_S32G274ARDB2}/s32g2_psci.c \
80e73c3c3aSGhennadi Procopciuc	${PLAT_S32G274ARDB2}/s32g2_soc.c \
81e73c3c3aSGhennadi Procopciuc	${XLAT_TABLES_LIB_SRCS} \
82e73c3c3aSGhennadi Procopciuc	lib/cpus/aarch64/cortex_a53.S \
83e73c3c3aSGhennadi Procopciuc	plat/common/plat_gicv3.c \
84e73c3c3aSGhennadi Procopciuc	plat/common/plat_psci_common.c \
85b47d085aSGhennadi Procopciuc
86b47d085aSGhennadi Procopciuc# process all errata flags
87b47d085aSGhennadi Procopciuc$(eval $(call default_zeros, $(S32_ERRATA_LIST)))
88b47d085aSGhennadi Procopciuc$(eval $(call add_defines, $(S32_ERRATA_LIST)))
89b47d085aSGhennadi Procopciuc$(eval $(call assert_booleans, $(S32_ERRATA_LIST)))
90