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