xref: /arm-trusted-firmware/plat/marvell/armada/a8k/common/ble/ble.mk (revision 91f16700b400a8c0651d24a598fc48ee2997a0d7)
1*91f16700Schasinglulu# Copyright (C) 2018 Marvell International Ltd.
2*91f16700Schasinglulu#
3*91f16700Schasinglulu# SPDX-License-Identifier:     BSD-3-Clause
4*91f16700Schasinglulu# https://spdx.org/licenses
5*91f16700Schasinglulu
6*91f16700SchasingluluMV_DDR_LIB		=	$(BUILD_PLAT)/ble/mv_ddr_lib.a
7*91f16700SchasingluluLIBC_LIB		=	$(BUILD_PLAT)/lib/libc.a
8*91f16700SchasingluluBLE_LIBS		=	$(MV_DDR_LIB) $(LIBC_LIB)
9*91f16700SchasingluluPLAT_MARVELL		=	plat/marvell/armada
10*91f16700Schasinglulu
11*91f16700SchasingluluBLE_SOURCES		+= 	$(BLE_PATH)/ble_main.c				\
12*91f16700Schasinglulu				$(BLE_PATH)/ble_mem.S				\
13*91f16700Schasinglulu				drivers/delay_timer/delay_timer.c		\
14*91f16700Schasinglulu				drivers/marvell/iob.c				\
15*91f16700Schasinglulu				$(PLAT_MARVELL)/common/aarch64/marvell_helpers.S \
16*91f16700Schasinglulu				$(PLAT_MARVELL)/common/plat_delay_timer.c	\
17*91f16700Schasinglulu				$(PLAT_MARVELL)/common/marvell_console.c
18*91f16700Schasinglulu
19*91f16700SchasingluluMV_DDR_INCLUDES		:=	-I$(CURDIR)/include				\
20*91f16700Schasinglulu				-I$(CURDIR)/include/arch/aarch64		\
21*91f16700Schasinglulu				-I$(CURDIR)/include/lib/libc			\
22*91f16700Schasinglulu				-I$(CURDIR)/include/lib/libc/aarch64
23*91f16700Schasinglulu
24*91f16700SchasingluluBLE_DEFAULT_LINKER_SCRIPT_SOURCE := $(BLE_PATH)/ble.ld.S
25*91f16700Schasinglulu
26*91f16700SchasingluluBLE_OBJS := $(addprefix $(BUILD_PLAT)/ble/,$(call SOURCES_TO_OBJS,$(BLE_SOURCES)))
27*91f16700Schasinglulu$(BLE_OBJS): PLAT_INCLUDES += -I$(MV_DDR_PATH)
28*91f16700Schasinglulu$(BLE_OBJS): $(MV_DDR_LIB)
29*91f16700Schasinglulu
30*91f16700Schasinglulu$(MV_DDR_LIB): FORCE
31*91f16700Schasinglulu#	Do not remove! Following checks are required to ensure correct TF-A builds, removing these checks leads to broken TF-A builds
32*91f16700Schasinglulu	$(if $(value MV_DDR_PATH),,$(error "Platform '$(PLAT)' for BLE requires MV_DDR_PATH. Please set MV_DDR_PATH to point to the right directory"))
33*91f16700Schasinglulu	$(if $(wildcard $(value MV_DDR_PATH)/*),,$(error "'MV_DDR_PATH=$(value MV_DDR_PATH)' was specified, but '$(value MV_DDR_PATH)' directory does not exist"))
34*91f16700Schasinglulu	$(if $(shell git -C $(value MV_DDR_PATH) rev-parse --show-cdup 2>&1),$(error "'MV_DDR_PATH=$(value MV_DDR_PATH)' was specified, but '$(value MV_DDR_PATH)' does not contain valid mv-ddr-marvell git repository"))
35*91f16700Schasinglulu	@+make -C $(MV_DDR_PATH) --no-print-directory PLAT_INCLUDES="$(MV_DDR_INCLUDES)" PLATFORM=$(PLAT) ARCH=AARCH64 OBJ_DIR=$(BUILD_PLAT)/ble
36