xref: /rk3399_ARM-atf/plat/imx/imx8m/imx8mn/platform.mk (revision a681e767aa4182e146339fcdaa055574cf3fa5d4)
158fdd608SJacky Bai#
2d2a339dfSJacky Bai# Copyright 2019-2022 NXP
358fdd608SJacky Bai#
458fdd608SJacky Bai# SPDX-License-Identifier: BSD-3-Clause
558fdd608SJacky Bai#
658fdd608SJacky Bai
758fdd608SJacky BaiPLAT_INCLUDES		:=	-Iplat/imx/common/include		\
858fdd608SJacky Bai				-Iplat/imx/imx8m/include		\
958fdd608SJacky Bai				-Iplat/imx/imx8m/imx8mn/include
1058fdd608SJacky Bai# Translation tables library
1158fdd608SJacky Baiinclude lib/xlat_tables_v2/xlat_tables.mk
1258fdd608SJacky Bai
1358fdd608SJacky Bai# Include GICv3 driver files
1458fdd608SJacky Baiinclude drivers/arm/gic/v3/gicv3.mk
1558fdd608SJacky Bai
162003fa94SJacky BaiIMX_DRAM_SOURCES	:=	plat/imx/imx8m/ddr/dram.c		\
179c336f61SJacky Bai				plat/imx/imx8m/ddr/clock.c		\
189c336f61SJacky Bai				plat/imx/imx8m/ddr/dram_retention.c	\
199c336f61SJacky Bai				plat/imx/imx8m/ddr/ddr4_dvfs.c		\
209c336f61SJacky Bai				plat/imx/imx8m/ddr/lpddr4_dvfs.c
212003fa94SJacky Bai
222003fa94SJacky Bai
2358fdd608SJacky BaiIMX_GIC_SOURCES		:=	${GICV3_SOURCES}			\
2458fdd608SJacky Bai				plat/common/plat_gicv3.c		\
2558fdd608SJacky Bai				plat/common/plat_psci_common.c		\
2658fdd608SJacky Bai				plat/imx/common/plat_imx8_gic.c
2758fdd608SJacky Bai
28c37a877eSSascha HauerBL31_SOURCES		+=	common/desc_image_load.c			\
29c37a877eSSascha Hauer				plat/imx/common/imx8_helpers.S			\
3058fdd608SJacky Bai				plat/imx/imx8m/gpc_common.c			\
31720e7b66SAndrey Zhizhikin				plat/imx/imx8m/imx_hab.c			\
3258fdd608SJacky Bai				plat/imx/imx8m/imx_aipstz.c			\
3358fdd608SJacky Bai				plat/imx/imx8m/imx_rdc.c			\
3458fdd608SJacky Bai				plat/imx/imx8m/imx8m_caam.c			\
35df730d94SMarco Felsch				plat/imx/imx8m/imx8m_ccm.c			\
360a76495bSJacky Bai				plat/imx/imx8m/imx8m_csu.c			\
3758fdd608SJacky Bai				plat/imx/imx8m/imx8m_psci_common.c		\
388d150c95SMarco Felsch				plat/imx/imx8m/imx8m_snvs.c			\
3958fdd608SJacky Bai				plat/imx/imx8m/imx8mn/imx8mn_bl31_setup.c	\
4058fdd608SJacky Bai				plat/imx/imx8m/imx8mn/imx8mn_psci.c		\
4158fdd608SJacky Bai				plat/imx/imx8m/imx8mn/gpc.c			\
4258fdd608SJacky Bai				plat/imx/common/imx8_topology.c			\
4358fdd608SJacky Bai				plat/imx/common/imx_sip_handler.c		\
4458fdd608SJacky Bai				plat/imx/common/imx_sip_svc.c			\
457eae1db0SSascha Hauer				plat/imx/common/imx_common.c			\
4658fdd608SJacky Bai				plat/imx/common/imx_uart_console.S		\
4758fdd608SJacky Bai				lib/cpus/aarch64/cortex_a53.S			\
4858fdd608SJacky Bai				drivers/arm/tzc/tzc380.c			\
4958fdd608SJacky Bai				drivers/delay_timer/delay_timer.c		\
5058fdd608SJacky Bai				drivers/delay_timer/generic_delay_timer.c	\
5158fdd608SJacky Bai				${IMX_GIC_SOURCES}				\
5258fdd608SJacky Bai				${XLAT_TABLES_LIB_SRCS}
5358fdd608SJacky Bai
5462d37a43SMarco FelschENABLE_PIE		:=	1
5558fdd608SJacky BaiUSE_COHERENT_MEM	:=	1
5658fdd608SJacky BaiRESET_TO_BL31		:=	1
5758fdd608SJacky BaiA53_DISABLE_NON_TEMPORAL_HINT := 0
5858fdd608SJacky Bai
5958fdd608SJacky BaiERRATA_A53_835769	:=	1
6058fdd608SJacky BaiERRATA_A53_843419	:=	1
6158fdd608SJacky BaiERRATA_A53_855873	:=	1
6258fdd608SJacky Bai
63*108146ceSAhmad FatoumIMX_DRAM_RETENTION	?=	1
64*108146ceSAhmad Fatoum$(eval $(call assert_boolean,IMX_DRAM_RETENTION))
65*108146ceSAhmad Fatoum$(eval $(call add_define,IMX_DRAM_RETENTION))
66*108146ceSAhmad Fatoum
67*108146ceSAhmad Fatoumifeq (${IMX_DRAM_RETENTION},1)
68*108146ceSAhmad FatoumBL31_SOURCES		+=	${IMX_DRAM_SOURCES}
69*108146ceSAhmad Fatoumendif
70*108146ceSAhmad Fatoum
719260a8c8SMarco Felschifneq (${PRELOADED_BL33_BASE},)
729260a8c8SMarco Felsch$(eval $(call add_define_val,PLAT_NS_IMAGE_OFFSET,${PRELOADED_BL33_BASE}))
739260a8c8SMarco Felschendif
749260a8c8SMarco Felsch
7558fdd608SJacky BaiBL32_BASE		?=	0xbe000000
7658fdd608SJacky Bai$(eval $(call add_define,BL32_BASE))
7758fdd608SJacky Bai
7858fdd608SJacky BaiBL32_SIZE		?=	0x2000000
7958fdd608SJacky Bai$(eval $(call add_define,BL32_SIZE))
8058fdd608SJacky Bai
8158fdd608SJacky BaiIMX_BOOT_UART_BASE	?=	0x30890000
82101f0702SMarco Felschifeq (${IMX_BOOT_UART_BASE},auto)
83101f0702SMarco Felsch    override IMX_BOOT_UART_BASE	:=	0
84101f0702SMarco Felschendif
8558fdd608SJacky Bai$(eval $(call add_define,IMX_BOOT_UART_BASE))
86ce2be321SPeng Fan
87d2a339dfSJacky BaiEL3_EXCEPTION_HANDLING := $(SDEI_SUPPORT)
88d2a339dfSJacky Baiifeq (${SDEI_SUPPORT}, 1)
89d2a339dfSJacky BaiBL31_SOURCES 		+= 	plat/imx/common/imx_ehf.c	\
90d2a339dfSJacky Bai				plat/imx/common/imx_sdei.c
91d2a339dfSJacky Baiendif
924f8d5b01SJi Luo
934f8d5b01SJi Luoifeq (${SPD},trusty)
944f8d5b01SJi Luo	BL31_CFLAGS    +=      -DPLAT_XLAT_TABLES_DYNAMIC=1
954f8d5b01SJi Luoendif
96