1 #
2 # This file is the makefile for building IPC example app for TI RTOS
3 #
4 SRCDIR += . ../common/src
5 INCDIR =
7 # List all the external components/interfaces, whose interface header files
8 # need to be included for this component
9 INCLUDE_EXTERNAL_INTERFACES = pdk
11 # List all the components required by the application
12 ifeq ($(BUILD_OS_TYPE), baremetal)
13 COMP_LIST_COMMON = $(PDK_COMMON_BAREMETAL_COMP)
14 ifeq ($(SOC), am64x)
15 COMP_LIST_COMMON += mailbox
16 endif
17 COMP_LIST_COMMON += ipc_baremetal
18 SRCS_COMMON += main_baremetal.c
19 ifeq ($(ISA),$(filter $(ISA), a53 a72))
20 LNKFLAGS_LOCAL_$(CORE) += --entry Entry
21 endif
22 ifeq ($(ISA), r5f)
23 SRCS_COMMON += r5f_mpu_$(SOC)_default.c
24 endif
25 ifeq ($(SOC),$(filter $(SOC), j721e j7200 am65xx am64x))
26 EXTERNAL_LNKCMD_FILE_LOCAL = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/linker_$(ISA)_$(CORE).lds
27 ifeq ($(ECHO_TEST_BTCM), 1)
28 ifeq ($(ISA), r5f)
29 ifeq ($(CORE),mcu1_0)
30 EXTERNAL_LNKCMD_FILE_LOCAL = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/linker_$(ISA)_$(CORE)_btcm.lds
31 endif
32 endif
33 endif
34 endif
35 else
36 INCLUDE_EXTERNAL_INTERFACES += xdc bios
37 COMP_LIST_COMMON = $(PDK_COMMON_TIRTOS_COMP)
38 COMP_LIST_COMMON += ipc
39 ifeq ($(SOC),$(filter $(SOC), j721e j7200))
40 ifeq ($(CORE),mcu1_0)
41 COMP_LIST_COMMON += sciserver_tirtos
42 endif
43 endif
44 ifeq ($(SOC), am64x)
45 COMP_LIST_COMMON += mailbox
46 endif
47 SRCS_COMMON += main_tirtos.c
48 # Enable XDC build for application by providing XDC CFG File per core
49 XDC_CFG_FILE_$(CORE) = $(PDK_INSTALL_PATH)/ti/build/$(SOC)/sysbios_$(ISA).cfg
50 ifeq ($(SOC),$(filter $(SOC), j721e j7200))
51 XDC_CFG_UPDATE_$(CORE) = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/ipc_override.cfg
52 ifeq ($(ECHO_TEST_BTCM), 1)
53 ifeq ($(ISA), r5f)
54 ifeq ($(CORE),mcu1_0)
55 XDC_CFG_FILE_$(CORE) = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/sysbios_$(ISA)_btcm.cfg
56 SRCS_ASM_COMMON += ipcCopyVecs2Exc.asm
57 else
58 XDC_CFG_FILE_$(CORE) = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/sysbios_$(ISA).cfg
59 endif
60 EXTERNAL_LNKCMD_FILE_LOCAL = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/linker_$(ISA)_$(CORE)_btcm_sysbios.lds
61 else
62 EXTERNAL_LNKCMD_FILE_LOCAL = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/linker_$(ISA)_$(CORE)_sysbios.lds
63 endif
64 else
65 ifeq ($(ISA), r5f)
66 XDC_CFG_FILE_$(CORE) = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/sysbios_$(ISA).cfg
67 endif
68 EXTERNAL_LNKCMD_FILE_LOCAL = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/linker_$(ISA)_$(CORE)_sysbios.lds
69 endif
70 endif
71 ifeq ($(SOC),$(filter $(SOC), am65xx am64x))
72 XDC_CFG_UPDATE_$(CORE) = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/ipc_override.cfg
73 ifeq ($(ISA), r5f)
74 XDC_CFG_FILE_$(CORE) = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/sysbios_$(ISA).cfg
75 endif
76 EXTERNAL_LNKCMD_FILE_LOCAL = $(PDK_INSTALL_PATH)/ti/drv/ipc/examples/common/$(SOC)/linker_$(ISA)_$(CORE)_sysbios.lds
77 endif
78 endif
80 # Common source files and CFLAGS across all platforms and cores
81 PACKAGE_SRCS_COMMON = . ../common ../../common
82 ifneq ($(BUILD_OS_TYPE), baremetal)
83 SRCS_COMMON += ipc_utils.c ipc_testsetup.c
84 else
85 SRCS_COMMON += ipc_trace.c ipc_testsetup_baremetal.c
86 endif
88 CFLAGS_LOCAL_COMMON += $(PDK_CFLAGS)
90 # Core/SoC/platform specific source files and CFLAGS
91 # Example:
92 # SRCS_<core/SoC/platform-name> =
93 # CFLAGS_LOCAL_<core/SoC/platform-name> =
95 # Include common make files
96 ifeq ($(MAKERULEDIR), )
97 #Makerule path not defined, define this and assume relative path from ROOTDIR
98 MAKERULEDIR := $(ROOTDIR)/ti/build/makerules
99 export MAKERULEDIR
100 endif
101 include $(MAKERULEDIR)/common.mk
103 # OBJs and libraries are built by using rule defined in rules_<target>.mk
104 # and need not be explicitly specified here
106 # Nothing beyond this point