xref: /rk3399_ARM-atf/plat/rockchip/rk3399/platform.mk (revision ff4735cfdfde273866a7e079dedec27b1e11438e)
16fba6e04STony Xie#
275311203Sdp-arm# Copyright (c) 2016-2017, ARM Limited and Contributors. All rights reserved.
36fba6e04STony Xie#
482cb2c1aSdp-arm# SPDX-License-Identifier: BSD-3-Clause
56fba6e04STony Xie#
66fba6e04STony Xie
76fba6e04STony XieRK_PLAT		:=	plat/rockchip
86fba6e04STony XieRK_PLAT_SOC	:=	${RK_PLAT}/${PLAT}
96fba6e04STony XieRK_PLAT_COMMON	:=	${RK_PLAT}/common
106fba6e04STony Xie
116fba6e04STony XiePLAT_INCLUDES		:=	-I${RK_PLAT_COMMON}/			\
126fba6e04STony Xie				-I${RK_PLAT_COMMON}/include/		\
136fba6e04STony Xie				-I${RK_PLAT_COMMON}/pmusram		\
146fba6e04STony Xie				-I${RK_PLAT_COMMON}/drivers/pmu/	\
156fba6e04STony Xie				-I${RK_PLAT_SOC}/			\
166fba6e04STony Xie				-I${RK_PLAT_SOC}/drivers/pmu/		\
175d3b1067SCaesar Wang				-I${RK_PLAT_SOC}/drivers/pwm/		\
18e3525114SXing Zheng				-I${RK_PLAT_SOC}/drivers/secure/	\
196fba6e04STony Xie				-I${RK_PLAT_SOC}/drivers/soc/		\
20fe877779SCaesar Wang				-I${RK_PLAT_SOC}/drivers/dram/		\
21c76631c5SZiyuan Xu				-I${RK_PLAT_SOC}/drivers/dp/		\
226fba6e04STony Xie				-I${RK_PLAT_SOC}/include/		\
23977001aaSXing Zheng				-I${RK_PLAT_SOC}/include/shared/	\
246fba6e04STony Xie
256fba6e04STony XieRK_GIC_SOURCES		:=	drivers/arm/gic/common/gic_common.c	\
26b38c6f6bSDerek Basehore				drivers/arm/gic/v3/arm_gicv3_common.c	\
27b38c6f6bSDerek Basehore				drivers/arm/gic/v3/gic500.c		\
286fba6e04STony Xie				drivers/arm/gic/v3/gicv3_main.c		\
296fba6e04STony Xie				drivers/arm/gic/v3/gicv3_helpers.c	\
306fba6e04STony Xie				plat/common/plat_gicv3.c		\
316fba6e04STony Xie				${RK_PLAT}/common/rockchip_gicv3.c
326fba6e04STony Xie
333e4b8fdcSSoby MathewPLAT_BL_COMMON_SOURCES	:=	lib/xlat_tables/xlat_tables_common.c	\
343e4b8fdcSSoby Mathew				lib/xlat_tables/aarch64/xlat_tables.c	\
35bb2162f1SSoby Mathew				plat/common/plat_psci_common.c
366fba6e04STony Xie
376fba6e04STony XieBL31_SOURCES	+=	${RK_GIC_SOURCES}				\
386fba6e04STony Xie			drivers/arm/cci/cci.c				\
39b1271091SSoby Mathew			drivers/console/aarch64/console.S		\
40b1271091SSoby Mathew			drivers/ti/uart/aarch64/16550_console.S		\
416fba6e04STony Xie			drivers/delay_timer/delay_timer.c		\
426704f425SAntonio Nino Diaz			drivers/delay_timer/generic_delay_timer.c	\
439901dcf6SCaesar Wang			drivers/gpio/gpio.c				\
446fba6e04STony Xie			lib/cpus/aarch64/cortex_a53.S			\
456fba6e04STony Xie			lib/cpus/aarch64/cortex_a72.S			\
466fba6e04STony Xie			${RK_PLAT_COMMON}/aarch64/plat_helpers.S	\
476fba6e04STony Xie			${RK_PLAT_COMMON}/bl31_plat_setup.c		\
4868ff45f4SCaesar Wang			${RK_PLAT_COMMON}/params_setup.c		\
496fba6e04STony Xie			${RK_PLAT_COMMON}/pmusram/pmu_sram_cpus_on.S	\
506fba6e04STony Xie			${RK_PLAT_COMMON}/plat_pm.c			\
516fba6e04STony Xie			${RK_PLAT_COMMON}/plat_topology.c		\
526fba6e04STony Xie			${RK_PLAT_COMMON}/aarch64/platform_common.c	\
531760db68SCaesar Wang			${RK_PLAT_COMMON}/rockchip_sip_svc.c		\
541760db68SCaesar Wang			${RK_PLAT_SOC}/plat_sip_calls.c			\
55c76631c5SZiyuan Xu			${RK_PLAT_SOC}/drivers/dp/cdn_dp.c		\
569901dcf6SCaesar Wang			${RK_PLAT_SOC}/drivers/gpio/rk3399_gpio.c	\
576fba6e04STony Xie			${RK_PLAT_SOC}/drivers/pmu/pmu.c		\
588382e17cSCaesar Wang			${RK_PLAT_SOC}/drivers/pmu/pmu_fw.c		\
59977001aaSXing Zheng			${RK_PLAT_SOC}/drivers/pmu/m0_ctl.c		\
605d3b1067SCaesar Wang			${RK_PLAT_SOC}/drivers/pwm/pwm.c		\
61e3525114SXing Zheng			${RK_PLAT_SOC}/drivers/secure/secure.c		\
62fe877779SCaesar Wang			${RK_PLAT_SOC}/drivers/soc/soc.c		\
63613038bcSCaesar Wang			${RK_PLAT_SOC}/drivers/dram/dfs.c		\
64fe877779SCaesar Wang			${RK_PLAT_SOC}/drivers/dram/dram.c		\
65e82f5082SDerek Basehore			${RK_PLAT_SOC}/drivers/dram/dram_spec_timing.c	\
66e82f5082SDerek Basehore			${RK_PLAT_SOC}/drivers/dram/suspend.c
676fba6e04STony Xie
686fba6e04STony XieENABLE_PLAT_COMPAT	:=	0
69890abc33SJulius WernerMULTI_CONSOLE_API	:=	1
70ec693569SCaesar Wang
713c250b9aSJulius Wernerinclude lib/coreboot/coreboot.mk
723c250b9aSJulius Werner
73ec693569SCaesar Wang$(eval $(call add_define,PLAT_EXTRA_LD_SCRIPT))
748382e17cSCaesar Wang
75dea1e8eeSCaesar Wang# Enable workarounds for selected Cortex-A53 erratas.
76dea1e8eeSCaesar WangERRATA_A53_855873	:=	1
77dea1e8eeSCaesar Wang
788382e17cSCaesar Wang# M0 source build
798382e17cSCaesar WangPLAT_M0                 :=      ${PLAT}m0
80e77ade28SJulius WernerBUILD_M0		:=	${BUILD_PLAT}/m0
818382e17cSCaesar Wang
82e77ade28SJulius WernerRK3399M0FW=${BUILD_M0}/${PLAT_M0}.bin
838382e17cSCaesar Wang$(eval $(call add_define,RK3399M0FW))
848382e17cSCaesar Wang
85*ff4735cfSLin HuangRK3399M0PMUFW=${BUILD_M0}/${PLAT_M0}pmu.bin
86*ff4735cfSLin Huang$(eval $(call add_define,RK3399M0PMUFW))
87*ff4735cfSLin Huang
88c76631c5SZiyuan XuHDCPFW=${RK_PLAT_SOC}/drivers/dp/hdcp.bin
89c76631c5SZiyuan Xu$(eval $(call add_define,HDCPFW))
90c76631c5SZiyuan Xu
918382e17cSCaesar Wang# CCACHE_EXTRAFILES is needed because ccache doesn't handle .incbin
928382e17cSCaesar Wangexport CCACHE_EXTRAFILES
93*ff4735cfSLin Huang${BUILD_PLAT}/bl31/pmu_fw.o: CCACHE_EXTRAFILES=$(RK3399M0FW):$(RK3399M0PMUFW)
948382e17cSCaesar Wang${RK_PLAT_SOC}/drivers/pmu/pmu_fw.c: $(RK3399M0FW)
958382e17cSCaesar Wang
96c76631c5SZiyuan Xu${BUILD_PLAT}/bl31/cdn_dp.o: CCACHE_EXTRAFILES=$(HDCPFW)
97c76631c5SZiyuan Xu${RK_PLAT_SOC}/drivers/dp/cdn_dp.c: $(HDCPFW)
98c76631c5SZiyuan Xu
998012cc5cSMasahiro Yamada$(eval $(call MAKE_PREREQ_DIR,${BUILD_M0},${BUILD_PLAT}))
1008382e17cSCaesar Wang.PHONY: $(RK3399M0FW)
101e77ade28SJulius Werner$(RK3399M0FW): | ${BUILD_M0}
102e77ade28SJulius Werner	$(MAKE) -C ${RK_PLAT_SOC}/drivers/m0 BUILD=$(abspath ${BUILD_PLAT}/m0)
1033872fc2dSDavid Cunado
1043872fc2dSDavid Cunado# Do not enable SVE
1053872fc2dSDavid CunadoENABLE_SVE_FOR_NS	:=	0
106