xref: /rk3399_ARM-atf/plat/nxp/soc-lx2160a/ddr_fip.mk (revision 18498657f05b66e915a57496974f2a60f0ef02a2)
1*18498657SPankaj Gupta#
2*18498657SPankaj Gupta# Copyright 2020 NXP
3*18498657SPankaj Gupta#
4*18498657SPankaj Gupta# SPDX-License-Identifier: BSD-3-Clause
5*18498657SPankaj Gupta#
6*18498657SPankaj Gupta
7*18498657SPankaj GuptaDDR_PHY_BIN_PATH	?=	./ddr-phy-binary/lx2160a
8*18498657SPankaj Gupta
9*18498657SPankaj Guptaifeq (${DDR_IMEM_UDIMM_1D},)
10*18498657SPankaj Gupta    DDR_IMEM_UDIMM_1D	:=	${DDR_PHY_BIN_PATH}/ddr4_pmu_train_imem.bin
11*18498657SPankaj Guptaendif
12*18498657SPankaj Gupta
13*18498657SPankaj Guptaifeq (${DDR_IMEM_UDIMM_2D},)
14*18498657SPankaj Gupta    DDR_IMEM_UDIMM_2D	:=	${DDR_PHY_BIN_PATH}/ddr4_2d_pmu_train_imem.bin
15*18498657SPankaj Guptaendif
16*18498657SPankaj Gupta
17*18498657SPankaj Guptaifeq (${DDR_DMEM_UDIMM_1D},)
18*18498657SPankaj Gupta    DDR_DMEM_UDIMM_1D	:=	${DDR_PHY_BIN_PATH}/ddr4_pmu_train_dmem.bin
19*18498657SPankaj Guptaendif
20*18498657SPankaj Gupta
21*18498657SPankaj Guptaifeq (${DDR_DMEM_UDIMM_2D},)
22*18498657SPankaj Gupta    DDR_DMEM_UDIMM_2D	:=	${DDR_PHY_BIN_PATH}/ddr4_2d_pmu_train_dmem.bin
23*18498657SPankaj Guptaendif
24*18498657SPankaj Gupta
25*18498657SPankaj Guptaifeq (${DDR_IMEM_RDIMM_1D},)
26*18498657SPankaj Gupta    DDR_IMEM_RDIMM_1D	:=	${DDR_PHY_BIN_PATH}/ddr4_rdimm_pmu_train_imem.bin
27*18498657SPankaj Guptaendif
28*18498657SPankaj Gupta
29*18498657SPankaj Guptaifeq (${DDR_IMEM_RDIMM_2D},)
30*18498657SPankaj Gupta    DDR_IMEM_RDIMM_2D	:=	${DDR_PHY_BIN_PATH}/ddr4_rdimm2d_pmu_train_imem.bin
31*18498657SPankaj Guptaendif
32*18498657SPankaj Gupta
33*18498657SPankaj Guptaifeq (${DDR_DMEM_RDIMM_1D},)
34*18498657SPankaj Gupta    DDR_DMEM_RDIMM_1D	:=	${DDR_PHY_BIN_PATH}/ddr4_rdimm_pmu_train_dmem.bin
35*18498657SPankaj Guptaendif
36*18498657SPankaj Gupta
37*18498657SPankaj Guptaifeq (${DDR_DMEM_RDIMM_2D},)
38*18498657SPankaj Gupta    DDR_DMEM_RDIMM_2D	:=	${DDR_PHY_BIN_PATH}/ddr4_rdimm2d_pmu_train_dmem.bin
39*18498657SPankaj Guptaendif
40*18498657SPankaj Gupta
41*18498657SPankaj Gupta$(shell mkdir -p '${BUILD_PLAT}')
42*18498657SPankaj Gupta
43*18498657SPankaj Guptaifeq (${DDR_FIP_NAME},)
44*18498657SPankaj Guptaifeq (${TRUSTED_BOARD_BOOT},1)
45*18498657SPankaj Gupta	DDR_FIP_NAME	:= ddr_fip_sec.bin
46*18498657SPankaj Guptaelse
47*18498657SPankaj Gupta	DDR_FIP_NAME	:= ddr_fip.bin
48*18498657SPankaj Guptaendif
49*18498657SPankaj Guptaendif
50*18498657SPankaj Gupta
51*18498657SPankaj Guptaifneq (${TRUSTED_BOARD_BOOT},1)
52*18498657SPankaj Gupta
53*18498657SPankaj GuptaDDR_FIP_ARGS += --ddr-immem-udimm-1d ${DDR_IMEM_UDIMM_1D} \
54*18498657SPankaj Gupta		--ddr-immem-udimm-2d ${DDR_IMEM_UDIMM_2D} \
55*18498657SPankaj Gupta		--ddr-dmmem-udimm-1d ${DDR_DMEM_UDIMM_1D} \
56*18498657SPankaj Gupta		--ddr-dmmem-udimm-2d ${DDR_DMEM_UDIMM_2D} \
57*18498657SPankaj Gupta		--ddr-immem-rdimm-1d ${DDR_IMEM_RDIMM_1D} \
58*18498657SPankaj Gupta		--ddr-immem-rdimm-2d ${DDR_IMEM_RDIMM_2D} \
59*18498657SPankaj Gupta		--ddr-dmmem-rdimm-1d ${DDR_DMEM_RDIMM_1D} \
60*18498657SPankaj Gupta		--ddr-dmmem-rdimm-2d ${DDR_DMEM_RDIMM_2D}
61*18498657SPankaj Guptaendif
62*18498657SPankaj Gupta
63*18498657SPankaj Gupta
64*18498657SPankaj Guptaifeq (${TRUSTED_BOARD_BOOT},1)
65*18498657SPankaj Guptaifeq (${MBEDTLS_DIR},)
66*18498657SPankaj Guptainclude plat/nxp/soc-lx2160a/ddr_sb.mk
67*18498657SPankaj Guptaelse
68*18498657SPankaj Guptainclude plat/nxp/soc-lx2160a/ddr_tbbr.mk
69*18498657SPankaj Gupta
70*18498657SPankaj Gupta# Variables for use with Certificate Generation Tool
71*18498657SPankaj GuptaCRTTOOLPATH	?=	tools/cert_create
72*18498657SPankaj GuptaCRTTOOL		?=	${CRTTOOLPATH}/cert_create${BIN_EXT}
73*18498657SPankaj Gupta
74*18498657SPankaj Guptaifneq (${GENERATE_COT},0)
75*18498657SPankaj Guptaddr_certificates: ${DDR_CRT_DEPS} ${CRTTOOL}
76*18498657SPankaj Gupta	${Q}${CRTTOOL} ${DDR_CRT_ARGS}
77*18498657SPankaj Gupta	@${ECHO_BLANK_LINE}
78*18498657SPankaj Gupta	@echo "Built $@ successfully"
79*18498657SPankaj Gupta	@echo "DDR certificates can be found in ${BUILD_PLAT}"
80*18498657SPankaj Gupta	@${ECHO_BLANK_LINE}
81*18498657SPankaj Guptaendif
82*18498657SPankaj Guptaendif
83*18498657SPankaj Guptaendif
84*18498657SPankaj Gupta
85*18498657SPankaj Gupta# Variables for use with Firmware Image Package
86*18498657SPankaj GuptaFIPTOOLPATH	?=	tools/fiptool
87*18498657SPankaj GuptaFIPTOOL		?=	${FIPTOOLPATH}/fiptool${BIN_EXT}
88*18498657SPankaj Gupta
89*18498657SPankaj Gupta${BUILD_PLAT}/${DDR_FIP_NAME}: ${DDR_FIP_DEPS} ${FIPTOOL}
90*18498657SPankaj Gupta	$(eval ${CHECK_DDR_FIP_CMD})
91*18498657SPankaj Gupta	${Q}${FIPTOOL} create ${DDR_FIP_ARGS} $@
92*18498657SPankaj Gupta	${Q}${FIPTOOL} info $@
93*18498657SPankaj Gupta	@${ECHO_BLANK_LINE}
94*18498657SPankaj Gupta	@echo "Built $@ successfully"
95*18498657SPankaj Gupta	@${ECHO_BLANK_LINE}
96*18498657SPankaj Gupta
97*18498657SPankaj Guptafip_ddr: ${BUILD_PLAT}/${DDR_FIP_NAME}
98