1 # File: udma_component.mk
2 # This file is component include make file of UDMA driver library.
3 # List of variables set in this file and their purpose:
4 # <mod>_RELPATH - This is the relative path of the module, typically from
5 # top-level directory of the package
6 # <mod>_PATH - This is the absolute path of the module. It derives from
7 # absolute path of the top-level directory (set in env.mk)
8 # and relative path set above
9 # <mod>_INCLUDE - This is the path that has interface header files of the
10 # module. This can be multiple directories (space separated)
11 # <mod>_PKG_LIST - Names of the modules (and sub-modules) that are a part
12 # part of this module, including itself.
13 # <mod>_BOARD_DEPENDENCY - "yes": means the code for this module depends on
14 # platform and the compiled obj/lib has to be kept
15 # under <platform> directory
16 # "no" or "" or if this variable is not defined: means
17 # this module has no platform dependent code and hence
18 # the obj/libs are not kept under <platform> dir.
19 # <mod>_CORE_DEPENDENCY - "yes": means the code for this module depends on
20 # core and the compiled obj/lib has to be kept
21 # under <core> directory
22 # "no" or "" or if this variable is not defined: means
23 # this module has no core dependent code and hence
24 # the obj/libs are not kept under <core> dir.
25 # <mod>_APP_STAGE_FILES - List of source files that belongs to the module
26 # <mod>, but that needs to be compiled at application
27 # build stage (in the context of the app). This is
28 # primarily for link time configurations or if the
29 # source file is dependent on options/defines that are
30 # application dependent. This can be left blank or
31 # not defined at all, in which case, it means there
32 # no source files in the module <mod> that are required
33 # to be compiled in the application build stage.
34 #
35 ifeq ($(udma_component_make_include), )
37 # List with various rtos_types(such as tirtos(sysbios),freertos,safertos) to build RTOS apps.
38 # Use the Default List defined in 'ti/build/makerules/component.mk'
39 # This list will be used to generate RTOS app make rule for each rtos_type.
40 drvudma_RTOS_LIST = $(DEFAULT_RTOS_LIST)
42 drvudma_SOCLIST = am65xx j721e j7200 am64x j721s2 j784s4
43 drvudma_BOARDLIST = am65xx_evm am65xx_idk j721e_sim j721e_evm j7200_evm am64x_evm j721s2_evm j784s4_evm
44 drvudma_dru_BOARDLIST = am65xx_evm am65xx_idk j721e_evm j721s2_evm j784s4_evm
45 drvudma_am65xx_CORELIST = mpu1_0 mcu1_0 mcu1_1
46 drvudma_j721e_CORELIST = mpu1_0 mcu1_0 mcu1_1 mcu2_0 mcu2_1 mcu3_0 mcu3_1 c66xdsp_1 c66xdsp_2 c7x_1 c7x-hostemu
47 drvudma_j7200_CORELIST = mpu1_0 mcu1_0 mcu1_1 mcu2_0 mcu2_1
48 drvudma_am64x_CORELIST = mpu1_0 mcu1_0 mcu1_1 mcu2_0 mcu2_1 m4f_0
49 drvudma_j721s2_CORELIST = mpu1_0 mcu1_0 mcu1_1 mcu2_0 mcu2_1 mcu3_0 mcu3_1 c7x_1 c7x_2 c7x-hostemu
50 drvudma_j784s4_CORELIST = mpu1_0 mcu1_0 mcu1_1 mcu2_0 mcu2_1 mcu3_0 mcu3_1 mcu4_0 mcu4_1 c7x_1 c7x_2 c7x_3 c7x_4 c7x-hostemu
52 # Define the rule to generate UDMA Drivers BOARDLIST for each rtos_type
53 # Default BOARDLIST for each rtos_type is defined in 'ti/build/makerules/component.mk'
54 # The following rule filters out UDMA Drivers BOARDLIST for each rtos_type.
55 # Here $(1) refers tot the first argument passed to the rule.
56 # In this case it is $(curos), each instance in "drvudma_RTOS_LIST" (ie, tirtos/freertos/safertos..)
57 define DRV_UDMA_BOARDLIST_RULE
59 drvudma_$(1)_BOARDLIST = $(filter $(DEFAULT_BOARDLIST_$(1)), $(drvudma_BOARDLIST))
60 drvudma_dru_$(1)_BOARDLIST = $(filter $(DEFAULT_BOARDLIST_$(1)), $(drvudma_dru_BOARDLIST))
62 endef
64 # Define the macro list with rules of all rtos_types
65 DRV_UDMA_BOARDLIST_MACRO_LIST := $(foreach curos, $(drvudma_RTOS_LIST), $(call DRV_UDMA_BOARDLIST_RULE,$(curos)))
67 # Evaluate the macro list to generate BOARDLIST for all rtos_types
68 $(eval ${DRV_UDMA_BOARDLIST_MACRO_LIST})
70 ifneq ($(SOC),$(filter $(SOC), am64x am65xx))
71 drvudma_$(SOC)_example_CORELIST = $(drvudma_$(SOC)_CORELIST)
72 else
73 drvudma_am65xx_example_CORELIST = mpu1_0 mcu1_0
74 drvudma_am64x_example_CORELIST = mcu1_0 mcu1_1 mcu2_0 mcu2_1 mpu1_0 #m4f for baremetal examples only
75 endif
77 ############################
78 # udma package
79 # List of components included under udma lib
80 # The components included here are built and will be part of udma lib
81 ############################
82 udma_LIB_LIST =
84 ############################
85 # udma examples
86 # List of examples under udma (+= is used at each example definition)
87 # All the tests mentioned in list are built when test target is called
88 # List below all examples for allowed values
89 ############################
90 udma_EXAMPLE_LIST =
92 #
93 # UDMA Modules
94 #
96 # UDMA library
97 udma_COMP_LIST = udma
98 udma_RELPATH = ti/drv/udma
99 udma_PATH = $(PDK_UDMA_COMP_PATH)
100 export udma_LIBNAME = udma
101 export udma_LIBPATH = $(PDK_UDMA_COMP_PATH)/lib
102 export udma_MAKEFILE = -fsrc/makefile
103 export udma_BOARD_DEPENDENCY = no
104 ifeq ($(BOARD),$(filter $(BOARD), j721e_ccqt j721e_loki j721e_hostemu j721s2_hostemu j784s4_hostemu))
105 export udma_BOARD_DEPENDENCY = yes
106 endif
107 export udma_CORE_DEPENDENCY = yes
108 udma_PKG_LIST = udma
109 udma_INCLUDE = $(udma_PATH)
110 export udma_SOCLIST = $(drvudma_SOCLIST)
111 export udma_$(SOC)_CORELIST = $(drvudma_$(SOC)_CORELIST)
112 udma_LIB_LIST += udma
114 #
115 # DMA Utils
116 #
117 # DMA Utils library
118 export dmautils_COMP_LIST = dmautils
119 dmautils_RELPATH = ti/drv/udma/dmautils
120 dmautils_PATH = $(PDK_UDMA_COMP_PATH)/dmautils
121 export dmautils_LIBNAME = dmautils
122 export dmautils_LIBPATH = $(PDK_UDMA_COMP_PATH)/lib
123 export dmautils_MAKEFILE = -fmakefile
124 export dmautils_BOARD_DEPENDENCY = no
125 ifeq ($(BOARD),$(filter $(BOARD), j721e_ccqt j721e_loki j721e_hostemu j721s2_hostemu j784s4_hostemu))
126 export dmautils_BOARD_DEPENDENCY = yes
127 endif
128 export dmautils_CORE_DEPENDENCY = yes
129 dmautils_PKG_LIST = dmautils
130 dmautils_INCLUDE = $(dmautils_PATH)
131 export dmautils_SOCLIST = j721e j721s2 j784s4
132 export dmautils_$(SOC)_CORELIST = c7x_1 c7x_2 c7x_3 c7x_4 c7x-hostemu
133 udma_LIB_LIST += dmautils
135 # UDMA example library
136 export udma_apputils_COMP_LIST = udma_apputils
137 udma_apputils_RELPATH = ti/drv/udma/examples/udma_apputils
138 udma_apputils_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_apputils
139 export udma_apputils_LIBNAME = udma_apputils
140 export udma_apputils_LIBPATH = $(PDK_UDMA_COMP_PATH)/lib
141 export udma_apputils_MAKEFILE = -fmakefile
142 export udma_apputils_BOARD_DEPENDENCY = no
143 export udma_apputils_CORE_DEPENDENCY = yes
144 udma_apputils_PKG_LIST = udma_apputils
145 udma_apputils_INCLUDE = $(udma_apputils_PATH)
146 export udma_apputils_SOCLIST = $(drvudma_SOCLIST)
147 export udma_apputils_$(SOC)_CORELIST = $(drvudma_$(SOC)_CORELIST)
148 udma_LIB_LIST += udma_apputils
150 #
151 # UDMA Examples
152 #
154 #
155 # DMA Utils tests
156 #
158 # DMA Utils test app
159 export dmautils_baremetal_autoincrement_testapp_COMP_LIST = dmautils_baremetal_autoincrement_testapp
160 dmautils_baremetal_autoincrement_testapp_RELPATH = ti/drv/udma/dmautils/test/dmautils_autoincrement_test
161 dmautils_baremetal_autoincrement_testapp_PATH = $(PDK_UDMA_COMP_PATH)/dmautils/test/dmautils_autoincrement_test
162 export dmautils_baremetal_autoincrement_testapp_BOARD_DEPENDENCY = yes
163 export dmautils_baremetal_autoincrement_testapp_CORE_DEPENDENCY = yes
164 dmautils_baremetal_autoincrement_testapp_PKG_LIST = dmautils_baremetal_autoincrement_testapp
165 dmautils_baremetal_autoincrement_testapp_INCLUDE = $(dmautils_baremetal_autoincrement_testapp_PATH)
166 export dmautils_baremetal_autoincrement_testapp_BOARDLIST = j721e_hostemu j721e_sim j721e_loki j721e_ccqt j721e_evm
167 export dmautils_baremetal_autoincrement_testapp_$(SOC)_CORELIST = c7x_1 c7x-hostemu
168 udma_EXAMPLE_LIST += dmautils_baremetal_autoincrement_testapp
170 export dmautils_baremetal_autoinc_1d2d3d_testapp_COMP_LIST = dmautils_baremetal_autoinc_1d2d3d_testapp
171 dmautils_baremetal_autoinc_1d2d3d_testapp_RELPATH = ti/drv/udma/dmautils/test/dmautils_autoinc_1d2d3d_test
172 dmautils_baremetal_autoinc_1d2d3d_testapp_PATH = $(PDK_UDMA_COMP_PATH)/dmautils/test/dmautils_autoinc_1d2d3d_test
173 export dmautils_baremetal_autoinc_1d2d3d_testapp_BOARD_DEPENDENCY = yes
174 export dmautils_baremetal_autoinc_1d2d3d_testapp_CORE_DEPENDENCY = yes
175 dmautils_baremetal_autoinc_1d2d3d_testapp_PKG_LIST = dmautils_baremetal_autoinc_1d2d3d_testapp
176 dmautils_baremetal_autoinc_1d2d3d_testapp_INCLUDE = $(dmautils_baremetal_autoinc_1d2d3d_testapp_PATH)
177 export dmautils_baremetal_autoinc_1d2d3d_testapp_BOARDLIST = j721e_hostemu j721e_sim j721e_loki j721e_ccqt j721e_evm
178 export dmautils_baremetal_autoinc_1d2d3d_testapp_$(SOC)_CORELIST = c7x_1 c7x-hostemu
179 udma_EXAMPLE_LIST += dmautils_baremetal_autoinc_1d2d3d_testapp
181 export dmautils_baremetal_autoinc_circular_testapp_COMP_LIST = dmautils_baremetal_autoinc_circular_testapp
182 dmautils_baremetal_autoinc_circular_testapp_RELPATH = ti/drv/udma/dmautils/test/dmautils_autoinc_circular_test
183 dmautils_baremetal_autoinc_circular_testapp_PATH = $(PDK_UDMA_COMP_PATH)/dmautils/test/dmautils_autoinc_circular_test
184 export dmautils_baremetal_autoinc_circular_testapp_BOARD_DEPENDENCY = yes
185 export dmautils_baremetal_autoinc_circular_testapp_CORE_DEPENDENCY = yes
186 dmautils_baremetal_autoinc_circular_testapp_PKG_LIST = dmautils_baremetal_autoinc_circular_testapp
187 dmautils_baremetal_autoinc_circular_testapp_INCLUDE = $(dmautils_baremetal_autoinc_circular_testapp_PATH)
188 export dmautils_baremetal_autoinc_circular_testapp_BOARDLIST = j721e_hostemu j721e_sim j721e_loki j721e_ccqt j721e_evm
189 export dmautils_baremetal_autoinc_circular_testapp_$(SOC)_CORELIST = c7x_1 c7x-hostemu
190 udma_EXAMPLE_LIST += dmautils_baremetal_autoinc_circular_testapp
192 # RTOS UDMA memcpy test apps
194 # Define the rule to generate the 'UDMA memcpy test app' make rule for each rtos_type
195 # - Here $(1) refers to the first argument passed to the rule.
196 # - In this case it is $(curos), each instance in "drvudma_RTOS_LIST" (ie, tirtos/freertos/safertos)
197 # - The target name will be <app_name>_<rtos_type> (ie, udma_memcpy_testapp_tirtos/udma_memcpy_testapp_freertos/...)
198 # - Set XDC_CONFIGURO only for 'rtos_type = tirtos'
199 # - Pass the arg BUILD_OS_TYPE=<rtos_type> to the common makefile for all rtos_types
200 # - In the common makefile, make use the param $(BUILD_OS_TYPE)
201 # - For example:
202 # APP_NAME = udma_memcpy_testapp_$(BUILD_OS_TYPE)
203 # ifeq ($(BUILD_OS_TYPE), tirtos)
204 # INCLUDE_EXTERNAL_INTERFACES += xdc bios
205 # endif
206 # ifeq ($(BUILD_OS_TYPE), tirtos)
207 # INCLUDE_EXTERNAL_INTERFACES += freertos
208 # endif
209 # - Here BOARDLIST passed for the target is drivers BOARDLIST for the particular rtos_type(ie, $(drvudma_$(rtos_type)_BOARDLIST). )
210 # - If passing a custom or common BOARDLIST, one **should** always filter with Default BOARDLIST for each rtos_type(ie, $(DEFAULT_BOARDLIST_$(rtos_type)). )
211 # - For example "export udma_memcpy_testapp_$(1)_BOARDLIST = $(filter $(DEFAULT_BOARDLIST_$(1)), am64x_evm j721e_evm )
212 # - This is because, in case of passing custom or common BOARDLIST, some boards may not be supporting all rtos_types
213 # - CORELIST passed for the target **should** always be filtered with the Default CORELIST of the SOC for each rtos_type (ie, $(DEFAULT_$(SOC)_CORELIST_$(1)). )
214 # - The default CORELIST of an SOC for each rtos_type is defined in 'ti/build/makerules/component.mk'
215 # - This is because some rtos_type won't be supported on specific cores. (For example, FreeRTOS is not supported on mpu1_0 core)
216 # - SafeRTOS example should be added to the example list only if SafeRTOS Kernel is present in the path.
217 define UDMA_MEMCPY_TESTAPP_RULE
219 export udma_memcpy_testapp_$(1)_COMP_LIST = udma_memcpy_testapp_$(1)
220 udma_memcpy_testapp_$(1)_RELPATH = ti/drv/udma/examples/udma_memcpy_test
221 udma_memcpy_testapp_$(1)_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_memcpy_test
222 export udma_memcpy_testapp_$(1)_BOARD_DEPENDENCY = yes
223 export udma_memcpy_testapp_$(1)_CORE_DEPENDENCY = yes
224 export udma_memcpy_testapp_$(1)_XDC_CONFIGURO = $(if $(findstring tirtos, $(1)), yes, no)
225 export udma_memcpy_testapp_$(1)_MAKEFILE = -f makefile BUILD_OS_TYPE=$(1)
226 udma_memcpy_testapp_$(1)_PKG_LIST = udma_memcpy_testapp_$(1)
227 udma_memcpy_testapp_$(1)_INCLUDE = $(udma_memcpy_testapp_$(1)_PATH)
228 export udma_memcpy_testapp_$(1)_BOARDLIST = $(filter $(DEFAULT_BOARDLIST_$(1)), $(drvudma_BOARDLIST))
229 ifeq ($(SOC),$(filter $(SOC), j784s4))
230 export udma_memcpy_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mpu1_0 mcu1_0 mcu2_0 mcu2_1 mcu3_0 mcu3_1 mcu4_0 mcu4_1 c7x_1 c7x_2 c7x_3 c7x_4)
231 else
232 ifeq ($(SOC),$(filter $(SOC), j721s2))
233 export udma_memcpy_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mpu1_0 mcu1_0 mcu2_0 mcu2_1 mcu3_0 mcu3_1 c7x_1 c7x_2)
234 else
235 ifeq ($(SOC),$(filter $(SOC), j721e))
236 export udma_memcpy_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mpu1_0 mcu1_0 mcu2_0 mcu2_1 mcu3_0 mcu3_1 c66xdsp_1 c66xdsp_2 c7x_1)
237 else
238 export udma_memcpy_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), $(drvudma_$(SOC)_example_CORELIST))
239 endif
240 endif
241 endif
242 export udma_memcpy_testapp_$(1)_SBL_APPIMAGEGEN = yes
243 ifneq ($(1),$(filter $(1), safertos))
244 udma_EXAMPLE_LIST += udma_memcpy_testapp_$(1)
245 else
246 ifneq ($(wildcard $(SAFERTOS_KERNEL_INSTALL_PATH)),)
247 udma_EXAMPLE_LIST += udma_memcpy_testapp_$(1)
248 endif
249 endif
251 endef
253 # Define the macro list with 'UDMA memcpy test app' rule of all rtos_types
254 UDMA_MEMCPY_TESTAPP_MACRO_LIST := $(foreach curos, $(drvudma_RTOS_LIST) safertos, $(call UDMA_MEMCPY_TESTAPP_RULE,$(curos)))
256 # Evaluate the macro list to generate 'UDMA memcpy test app' make rule for all rtos_types
257 $(eval ${UDMA_MEMCPY_TESTAPP_MACRO_LIST})
259 # UDMA memcpy baremetal test app
260 export udma_baremetal_memcpy_testapp_COMP_LIST = udma_baremetal_memcpy_testapp
261 udma_baremetal_memcpy_testapp_RELPATH = ti/drv/udma/examples/udma_memcpy_test
262 udma_baremetal_memcpy_testapp_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_memcpy_test
263 export udma_baremetal_memcpy_testapp_MAKEFILE = -fmakefile_baremetal
264 export udma_baremetal_memcpy_testapp_BOARD_DEPENDENCY = yes
265 export udma_baremetal_memcpy_testapp_CORE_DEPENDENCY = yes
266 udma_baremetal_memcpy_testapp_PKG_LIST = udma_baremetal_memcpy_testapp
267 udma_baremetal_memcpy_testapp_INCLUDE = $(udma_baremetal_memcpy_testapp_PATH)
268 export udma_baremetal_memcpy_testapp_BOARDLIST = $(drvudma_BOARDLIST)
269 ifeq ($(SOC),$(filter $(SOC), j721e j721s2 j784s4))
270 export udma_baremetal_memcpy_testapp_$(SOC)_CORELIST = mpu1_0 mcu1_0 mcu2_0
271 else
272 export udma_baremetal_memcpy_testapp_$(SOC)_CORELIST = $(drvudma_$(SOC)_example_CORELIST)
273 endif
274 export udma_baremetal_memcpy_testapp_SBL_APPIMAGEGEN = yes
275 udma_EXAMPLE_LIST += udma_baremetal_memcpy_testapp
277 # RTOS UDMA chaining test apps
278 define UDMA_CHAINING_TESTAPP_RULE
280 export udma_chaining_testapp_$(1)_COMP_LIST = udma_chaining_testapp_$(1)
281 udma_chaining_testapp_$(1)_RELPATH = ti/drv/udma/examples/udma_chaining_test
282 udma_chaining_testapp_$(1)_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_chaining_test
283 export udma_chaining_testapp_$(1)_BOARD_DEPENDENCY = yes
284 export udma_chaining_testapp_$(1)_CORE_DEPENDENCY = yes
285 export udma_chaining_testapp_$(1)_XDC_CONFIGURO = $(if $(findstring tirtos, $(1)), yes, no)
286 export udma_chaining_testapp_$(1)_MAKEFILE = -f makefile BUILD_OS_TYPE=$(1)
287 udma_chaining_testapp_$(1)_PKG_LIST = udma_chaining_testapp_$(1)
288 udma_chaining_testapp_$(1)_INCLUDE = $(udma_chaining_testapp_$(1)_PATH)
289 export udma_chaining_testapp_$(1)_BOARDLIST = $(drvudma_$(1)_BOARDLIST)
290 export udma_chaining_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mpu1_0 mcu1_0)
291 export udma_chaining_testapp_$(1)_SBL_APPIMAGEGEN = yes
292 ifneq ($(1),$(filter $(1), safertos))
293 udma_EXAMPLE_LIST += udma_chaining_testapp_$(1)
294 else
295 ifneq ($(wildcard $(SAFERTOS_KERNEL_INSTALL_PATH)),)
296 udma_EXAMPLE_LIST += udma_chaining_testapp_$(1)
297 endif
298 endif
300 endef
302 UDMA_CHAINING_TESTAPP_MACRO_LIST := $(foreach curos, $(drvudma_RTOS_LIST), $(call UDMA_CHAINING_TESTAPP_RULE,$(curos)))
304 $(eval ${UDMA_CHAINING_TESTAPP_MACRO_LIST})
307 # RTOS UDMA SW trigger test apps
308 define UDMA_SW_TRIGGER_TESTAPP_RULE
310 export udma_sw_trigger_testapp_$(1)_COMP_LIST = udma_sw_trigger_testapp_$(1)
311 udma_sw_trigger_testapp_$(1)_RELPATH = ti/drv/udma/examples/udma_sw_trigger_test
312 udma_sw_trigger_testapp_$(1)_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_sw_trigger_test
313 export udma_sw_trigger_testapp_$(1)_BOARD_DEPENDENCY = yes
314 export udma_sw_trigger_testapp_$(1)_CORE_DEPENDENCY = yes
315 export udma_sw_trigger_testapp_$(1)_XDC_CONFIGURO = $(if $(findstring tirtos, $(1)), yes, no)
316 export udma_sw_trigger_testapp_$(1)_MAKEFILE = -f makefile BUILD_OS_TYPE=$(1)
317 udma_sw_trigger_testapp_$(1)_PKG_LIST = udma_sw_trigger_testapp_$(1)
318 udma_sw_trigger_testapp_$(1)_INCLUDE = $(udma_sw_trigger_testapp_$(1)_PATH)
319 export udma_sw_trigger_testapp_$(1)_BOARDLIST = $(drvudma_$(1)_BOARDLIST)
320 export udma_sw_trigger_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mcu1_0)
321 export udma_sw_trigger_testapp_$(1)_SBL_APPIMAGEGEN = yes
322 ifneq ($(1),$(filter $(1), safertos))
323 udma_EXAMPLE_LIST += udma_sw_trigger_testapp_$(1)
324 else
325 ifneq ($(wildcard $(SAFERTOS_KERNEL_INSTALL_PATH)),)
326 udma_EXAMPLE_LIST += udma_sw_trigger_testapp_$(1)
327 endif
328 endif
330 endef
332 UDMA_SW_TRIGGER_TESTAPP_MACRO_LIST := $(foreach curos, $(drvudma_RTOS_LIST), $(call UDMA_SW_TRIGGER_TESTAPP_RULE,$(curos)))
334 $(eval ${UDMA_SW_TRIGGER_TESTAPP_MACRO_LIST})
337 # RTOS UDMA DRU test apps
338 define UDMA_DRU_TESTAPP_RULE
340 export udma_dru_testapp_$(1)_COMP_LIST = udma_dru_testapp_$(1)
341 udma_dru_testapp_$(1)_RELPATH = ti/drv/udma/examples/udma_dru_test
342 udma_dru_testapp_$(1)_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_dru_test
343 export udma_dru_testapp_$(1)_BOARD_DEPENDENCY = yes
344 export udma_dru_testapp_$(1)_CORE_DEPENDENCY = yes
345 export udma_dru_testapp_$(1)_XDC_CONFIGURO = $(if $(findstring tirtos, $(1)), yes, no)
346 export udma_dru_testapp_$(1)_MAKEFILE = -f makefile BUILD_OS_TYPE=$(1)
347 udma_dru_testapp_$(1)_PKG_LIST = udma_dru_testapp_$(1)
348 udma_dru_testapp_$(1)_INCLUDE = $(udma_dru_testapp_$(1)_PATH)
349 export udma_dru_testapp_$(1)_BOARDLIST = $(drvudma_dru_$(1)_BOARDLIST)
350 ifeq ($(SOC),$(filter $(SOC), j721e))
351 export udma_dru_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mcu2_0 c66xdsp_1 c66xdsp_2 c7x_1)
352 else
353 ifeq ($(SOC),$(filter $(SOC), j721s2))
354 export udma_dru_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mcu2_0 c7x_1 c7x_2)
355 else
356 ifeq ($(SOC),$(filter $(SOC), j784s4))
357 export udma_dru_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mcu2_0 c7x_1 c7x_2 c7x_3 c7x_4)
358 else
359 export udma_dru_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), $(drvudma_$(SOC)_example_CORELIST))
360 endif
361 endif
362 endif
363 export udma_dru_testapp_$(1)_SBL_APPIMAGEGEN = yes
364 ifneq ($(1),$(filter $(1), safertos))
365 udma_EXAMPLE_LIST += udma_dru_testapp_$(1)
366 else
367 ifneq ($(wildcard $(SAFERTOS_KERNEL_INSTALL_PATH)),)
368 udma_EXAMPLE_LIST += udma_dru_testapp_$(1)
369 endif
370 endif
372 endef
374 UDMA_DRU_TESTAPP_MACRO_LIST := $(foreach curos, $(drvudma_RTOS_LIST), $(call UDMA_DRU_TESTAPP_RULE,$(curos)))
376 $(eval ${UDMA_DRU_TESTAPP_MACRO_LIST})
379 # RTOS UDMA DRU Direct TR test apps
380 define UDMA_DRU_DIRECT_TR_TESTAPP_RULE
382 export udma_dru_direct_tr_testapp_$(1)_COMP_LIST = udma_dru_direct_tr_testapp_$(1)
383 udma_dru_direct_tr_testapp_$(1)_RELPATH = ti/drv/udma/examples/udma_dru_direct_tr_test
384 udma_dru_direct_tr_testapp_$(1)_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_dru_direct_tr_test
385 export udma_dru_direct_tr_testapp_$(1)_BOARD_DEPENDENCY = yes
386 export udma_dru_direct_tr_testapp_$(1)_CORE_DEPENDENCY = yes
387 export udma_dru_direct_tr_testapp_$(1)_XDC_CONFIGURO = $(if $(findstring tirtos, $(1)), yes, no)
388 export udma_dru_direct_tr_testapp_$(1)_MAKEFILE = -f makefile BUILD_OS_TYPE=$(1)
389 udma_dru_direct_tr_testapp_$(1)_PKG_LIST = udma_dru_direct_tr_testapp_$(1)
390 udma_dru_direct_tr_testapp_$(1)_INCLUDE = $(udma_dru_direct_tr_testapp_$(1)_PATH)
391 export udma_dru_direct_tr_testapp_$(1)_BOARDLIST = $(drvudma_dru_$(1)_BOARDLIST)
392 ifeq ($(SOC),$(filter $(SOC), j721e))
393 export udma_dru_direct_tr_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mcu2_0 c66xdsp_1 c7x_1)
394 else
395 ifeq ($(SOC),$(filter $(SOC), j721s2))
396 export udma_dru_direct_tr_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mcu2_0 c7x_1 c7x_2)
397 else
398 ifeq ($(SOC),$(filter $(SOC), j784s4))
399 export udma_dru_direct_tr_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mcu2_0 c7x_1 c7x_2 c7x_3 c7x_4)
400 else
401 export udma_dru_direct_tr_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), $(drvudma_$(SOC)_example_CORELIST))
402 endif
403 endif
404 endif
405 export udma_dru_direct_tr_testapp_$(1)_SBL_APPIMAGEGEN = yes
406 ifneq ($(1),$(filter $(1), safertos))
407 udma_EXAMPLE_LIST += udma_dru_direct_tr_testapp_$(1)
408 else
409 ifneq ($(wildcard $(SAFERTOS_KERNEL_INSTALL_PATH)),)
410 udma_EXAMPLE_LIST += udma_dru_direct_tr_testapp_$(1)
411 endif
412 endif
414 endef
416 UDMA_DRU_DIRECT_TR_TESTAPP_MACRO_LIST := $(foreach curos, $(drvudma_RTOS_LIST), $(call UDMA_DRU_DIRECT_TR_TESTAPP_RULE,$(curos)))
418 $(eval ${UDMA_DRU_DIRECT_TR_TESTAPP_MACRO_LIST})
421 # RTOS UDMA CRC test apps
422 define UDMA_CRC_TESTAPP_RULE
424 export udma_crc_testapp_$(1)_COMP_LIST = udma_crc_testapp_$(1)
425 udma_crc_testapp_$(1)_RELPATH = ti/drv/udma/examples/udma_crc_test
426 udma_crc_testapp_$(1)_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_crc_test
427 export udma_crc_testapp_$(1)_BOARD_DEPENDENCY = yes
428 export udma_crc_testapp_$(1)_CORE_DEPENDENCY = yes
429 export udma_crc_testapp_$(1)_XDC_CONFIGURO = $(if $(findstring tirtos, $(1)), yes, no)
430 export udma_crc_testapp_$(1)_MAKEFILE = -f makefile BUILD_OS_TYPE=$(1)
431 udma_crc_testapp_$(1)_PKG_LIST = udma_crc_testapp_$(1)
432 udma_crc_testapp_$(1)_INCLUDE = $(udma_crc_testapp_$(1)_PATH)
433 export udma_crc_testapp_$(1)_BOARDLIST = $(drvudma_$(1)_BOARDLIST)
434 export udma_crc_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mpu1_0 mcu1_0)
435 export udma_crc_testapp_$(1)_SBL_APPIMAGEGEN = yes
436 ifneq ($(1),$(filter $(1), safertos))
437 udma_EXAMPLE_LIST += udma_crc_testapp_$(1)
438 else
439 ifneq ($(wildcard $(SAFERTOS_KERNEL_INSTALL_PATH)),)
440 udma_EXAMPLE_LIST += udma_crc_testapp_$(1)
441 endif
442 endif
444 endef
446 UDMA_CRC_TESTAPP_MACRO_LIST := $(foreach curos, $(drvudma_RTOS_LIST), $(call UDMA_CRC_TESTAPP_RULE,$(curos)))
448 $(eval ${UDMA_CRC_TESTAPP_MACRO_LIST})
451 # RTOS UDMA ADC test apps
452 define UDMA_ADC_TESTAPP_RULE
454 export udma_adc_testapp_$(1)_COMP_LIST = udma_adc_testapp_$(1)
455 udma_adc_testapp_$(1)_RELPATH = ti/drv/udma/examples/udma_adc_test
456 udma_adc_testapp_$(1)_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_adc_test
457 export udma_adc_testapp_$(1)_BOARD_DEPENDENCY = yes
458 export udma_adc_testapp_$(1)_CORE_DEPENDENCY = yes
459 export udma_adc_testapp_$(1)_XDC_CONFIGURO = $(if $(findstring tirtos, $(1)), yes, no)
460 export udma_adc_testapp_$(1)_MAKEFILE = -f makefile BUILD_OS_TYPE=$(1)
461 udma_adc_testapp_$(1)_PKG_LIST = udma_adc_testapp_$(1)
462 udma_adc_testapp_$(1)_INCLUDE = $(udma_adc_testapp_$(1)_PATH)
463 export udma_adc_testapp_$(1)_BOARDLIST = $(drvudma_$(1)_BOARDLIST)
464 export udma_adc_testapp_$(1)_$(SOC)_CORELIST = $(filter $(DEFAULT_$(SOC)_CORELIST_$(1)), mpu1_0 mcu1_0)
465 export udma_adc_testapp_$(1)_SBL_APPIMAGEGEN = yes
466 ifneq ($(1),$(filter $(1), safertos))
467 udma_EXAMPLE_LIST += udma_adc_testapp_$(1)
468 else
469 ifneq ($(wildcard $(SAFERTOS_KERNEL_INSTALL_PATH)),)
470 udma_EXAMPLE_LIST += udma_adc_testapp_$(1)
471 endif
472 endif
474 endef
476 UDMA_ADC_TESTAPP_MACRO_LIST := $(foreach curos, $(drvudma_RTOS_LIST), $(call UDMA_ADC_TESTAPP_RULE,$(curos)))
478 $(eval ${UDMA_ADC_TESTAPP_MACRO_LIST})
481 # UDMA Baremetal OSPI Flash test app
482 export udma_baremetal_ospi_flash_testapp_COMP_LIST = udma_baremetal_ospi_flash_testapp
483 udma_baremetal_ospi_flash_testapp_RELPATH = ti/drv/udma/examples/udma_ospi_flash_test
484 udma_baremetal_ospi_flash_testapp_PATH = $(PDK_UDMA_COMP_PATH)/examples/udma_ospi_flash_test
485 export udma_baremetal_ospi_flash_testapp_BOARD_DEPENDENCY = yes
486 export udma_baremetal_ospi_flash_testapp_CORE_DEPENDENCY = yes
487 udma_baremetal_ospi_flash_testapp_PKG_LIST = udma_baremetal_ospi_flash_testapp
488 udma_baremetal_ospi_flash_testapp_INCLUDE = $(udma_baremetal_ospi_flash_testapp_PATH)
489 export udma_baremetal_ospi_flash_testapp_BOARDLIST = $(drvudma_BOARDLIST)
490 export udma_baremetal_ospi_flash_testapp_$(SOC)_CORELIST = mcu1_0
491 export udma_baremetal_ospi_flash_testapp_SBL_APPIMAGEGEN = yes
492 udma_EXAMPLE_LIST += udma_baremetal_ospi_flash_testapp
494 -include $(PDK_UDMA_COMP_PATH)/unit_test/udma_ut_component.mk
495 ifneq ($(udma_ut_LIB_LIST),)
496 udma_LIB_LIST += $(udma_ut_LIB_LIST)
497 endif
498 ifneq ($(udma_ut_EXAMPLE_LIST),)
499 udma_EXAMPLE_LIST += $(udma_ut_EXAMPLE_LIST)
500 endif
502 export udma_LIB_LIST
503 export udma_EXAMPLE_LIST
504 export drvudma_LIB_LIST = $(udma_LIB_LIST)
505 export drvudma_EXAMPLE_LIST = $(udma_EXAMPLE_LIST)
507 UDMA_CFLAGS =
509 # Enable asserts and prints
510 UDMA_CFLAGS += -DUDMA_CFG_ASSERT_ENABLE
511 UDMA_CFLAGS += -DUDMA_CFG_PRINT_ENABLE
513 export UDMA_CFLAGS
515 udma_component_make_include := 1
516 endif