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