]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - keystone-rtos/edma3_lld.git/blob - makerules/platform.mk
Misra C fixes:
[keystone-rtos/edma3_lld.git] / makerules / platform.mk
1 # Filename: platforms.mk
2 #
3 # Platforms make file - Platform/SoC/targets are defined/derived in this file
4
5 # This file needs to change when:
6 #     1. a new platform/SoC is added, which also might have its own cores/ISAs
7 #
9 #
10 # Derive SOC from PLATFORM
11 #
13 # tda2xx (Vayu) EVM
14 ifeq ($(PLATFORM),tda2xx-evm)
15  SOC = tda2xx
16  PLATFORM_XDC = "ti.platforms.evmDRA7XX"
17 endif
19 # tda3xx (ADAS low)
20 ifeq ($(PLATFORM),tda3xx-evm)
21  SOC = tda3xx
22  PLATFORM_XDC = "ti.platforms.evmDRA7XX"
23 endif
25 #  dra72x (j6Eco)
26 ifeq ($(PLATFORM),dra72x-evm)
27  SOC = dra72x
28  PLATFORM_XDC = "ti.platforms.evmDRA7XX"
29 endif
31 # ti816x (Netra) catalog EVM
32 ifeq ($(PLATFORM),ti816x-evm)
33  SOC = ti816x
34  PLATFORM_XDC = "ti.platforms.evmTI816X"
35 endif
37 # ti816x (Netra) Simulator
38 ifeq ($(PLATFORM),ti816x-sim)
39  SOC = ti816x
40  ifeq ($(CORE),c6xdsp)
41   PLATFORM_XDC = "ti.platforms.simDM8168"
42  endif
43 endif
45 # ti814x (Centaurus) Catalog EVM
46 ifeq ($(PLATFORM),ti814x-evm)
47  SOC = ti814x
48  PLATFORM_XDC = "ti.platforms.evmTI814X"
49 endif
51 # c6a811x (J5Eco) Catalog EVM
52 ifeq ($(PLATFORM),c6a811x-evm)
53  SOC = c6a811x
54  PLATFORM_XDC = "ti.platforms.evmTI811X"
55 endif
57 # c6472 (Tomahawk) EVM
58 ifeq ($(PLATFORM),c6472-evm)
59  SOC = c6472
60  PLATFORM_XDC = "ti.platforms.evm6472"
61 endif
63 # tci6486 (Tomahawk) EVM
64 ifeq ($(PLATFORM),tci6486-evm)
65  SOC = c6472
66  PLATFORM_XDC = "ti.platforms.evmTCI6486"
67 endif
69 # tci6608 (Shannon) Simulator 
70 ifeq ($(PLATFORM),tci6608-sim)
71  SOC = c6608
72  PLATFORM_XDC = "ti.platforms.simTCI6608"
73 endif
75 # tci6616 (Nyquist) Simulator 
76 ifeq ($(PLATFORM),tci6616-sim)
77  SOC = c6616
78  PLATFORM_XDC = "ti.platforms.simTCI6616"
79 endif
81 # tci6614 (Appleton) Simulator 
82 ifeq ($(PLATFORM),tci6614-sim)
83  SOC = tci6614
84  PLATFORM_XDC = "ti.platforms.simTCI6614"
85 endif
87 # c6657 (Gauss) Simulator 
88 ifeq ($(PLATFORM),c6657-sim)
89  SOC = c6657
90  PLATFORM_XDC = "ti.platforms.simC6657"
91 endif
93 # tci6638k2k (Kepler2) Simulator 
94 ifeq ($(PLATFORM),tci6638k2k-sim)
95  SOC = tci6638k2k
96  PLATFORM_XDC = "ti.platforms.simKepler"
97 endif
99 # c6670 (Nyquist) EVM
100 ifeq ($(PLATFORM),c6670-evm)
101  SOC = c6670
102  PLATFORM_XDC = "ti.platforms.evm6670"
103 endif
105 # c6678 (Shannon) EVM
106 ifeq ($(PLATFORM),c6678-evm)
107  SOC = c6678
108  PLATFORM_XDC = "ti.platforms.evm6678"
109 endif
111 # tci6614 (Appleton) EVM
112 ifeq ($(PLATFORM),tci6614-evm)
113  SOC = tci6614
114  PLATFORM_XDC = "ti.platforms.evmTCI6614"
115 endif
117 # c6657 (Gauss) EVM
118 ifeq ($(PLATFORM),c6657-evm)
119  SOC = c6657
120  PLATFORM_XDC = "ti.platforms.evm6657"
121 endif
123 # tci6638k2k (Kepler2) EVM
124 ifeq ($(PLATFORM),tci6638k2k-evm)
125  SOC = tci6638k2k
126  CFLAGS_LOCAL_a15host += -DGENERIC
127  PLATFORM_XDC = "ti.platforms.evmTCI6638K2K"
128 endif
130 # tci6630k2l EVM
131 ifeq ($(PLATFORM),tci6630k2l-evm)
132  SOC = tci6630k2l
133  CFLAGS_LOCAL_a15host += -DGENERIC
134  PLATFORM_XDC = "ti.platforms.evmTCI6630K2L"
135 endif
137 # c66ak2e EVM
138 ifeq ($(PLATFORM),c66ak2e-evm)
139  SOC = c66ak2e
140  CFLAGS_LOCAL_a15host += -DGENERIC
141  PLATFORM_XDC = "ti.platforms.evmC66AK2E"
142 endif
144 # tci6636k2h (Hawking) EVM
145 ifeq ($(PLATFORM),tci6636k2h-evm)
146  SOC = tci6636k2h
147  CFLAGS_LOCAL_a15host += -DGENERIC
148  PLATFORM_XDC = "ti.platforms.evmTCI6636K2H"
149 endif
151 # omapl138 (Freon) EVM
152 ifeq ($(PLATFORM),omapl138-evm)
153  SOC = omapl138
154  PLATFORM_XDC = "ti.platforms.evmOMAPL138"
155 endif
157 # c6748 (Freon) EVM
158 ifeq ($(PLATFORM),c6748-evm)
159  SOC = omapl138
160  PLATFORM_XDC = "ti.platforms.evm6748"
161 endif
163 # da830 (Primus) EVM
164 ifeq ($(PLATFORM),da830-evm)
165  SOC = omapl137
166  PLATFORM_XDC = "ti.platforms.evmDA830"
167 endif
169 # omap4 EVM
170 ifeq ($(PLATFORM),omap4-evm)
171  SOC = omap4
172  PLATFORM_XDC = "ti.platforms.sdp4430"
173 endif
175 # Generic platform
176 ifeq ($(PLATFORM),generic)
177  SOC = generic
178  PLATFORM_XDC = 
179 endif
181 # Derive Target/ISA from CORE
183 # m4
184 ifeq ($(CORE),m4)
185  ISA = m4
186 endif
188 # a15host
189 ifeq ($(CORE),a15host)
190  ISA = a15
191 endif
193 # m3vpss
194 ifeq ($(CORE),m3vpss)
195  ISA = m3
196 endif
198 # m3video
199 ifeq ($(CORE),m3video)
200  ISA = m3
201 endif
203 # a8host
204 ifeq ($(CORE),a8host)
205  ISA = a8
206 endif
208 # arm9
209 ifeq ($(CORE),arm9)
210  ISA = arm9
211 endif
213 # c6xdsp
214 ifeq ($(CORE),c6xdsp)
215  ifeq ($(SOC),ti816x)
216   ISA = 674
217  endif
218  ifeq ($(SOC),tda2xx)
219   ISA = 66
220  endif
221  ifeq ($(SOC),tda3xx)
222   ISA = 66
223  endif
224  ifeq ($(SOC),dra72x)
225   ISA = 66
226  endif
227  ifeq ($(SOC),ti814x)
228   ISA = 674
229  endif
230  ifeq ($(SOC),c6a811x)
231   ISA = 674
232  endif
233  ifeq ($(SOC),omapl137)
234   ISA = 674
235  endif
236  ifeq ($(SOC),omapl138)
237   ISA = 674
238  endif
239  ifeq ($(SOC),c6472)
240   ISA = 64p
241  endif
242  ifeq ($(SOC),c6608)
243   ISA = 66
244  endif
245  ifeq ($(SOC),c66ak2e)
246   ISA = 66
247  endif
248  ifeq ($(SOC),c6616)
249   ISA = 66
250  endif
251  ifeq ($(SOC),tci6614)
252   ISA = 66
253  endif
254  ifeq ($(SOC),c6657)
255   ISA = 66
256  endif
257  ifeq ($(SOC),c6670)
258   ISA = 66
259  endif
260  ifeq ($(SOC),c6678)
261   ISA = 66
262  endif
263  ifeq ($(SOC),tci6638k2k)
264   ISA = 66
265  endif
266  ifeq ($(SOC),tci6630k2l)
267   ISA = 66
268  endif
269  ifeq ($(SOC),tci6636k2h)
270   ISA = 66
271  endif
272  ifeq ($(SOC),omap4)
273   ISA = 64t
274  endif
275 endif
277 # EVE - arp32
278 ifeq ($(CORE),eve)
279  ISA = arp32
280 endif
282 # Platform and SOC is generic; use the core name same as ISA (eg: 674)
283 ifeq ($(SOC),generic)
284   ISA = $(CORE)
285 endif
288 # Derive XDC/ISA specific settings 
290 ifeq ($(ISA),m4)
291   COMPILER = TMS470
292   ifeq ($(FORMAT),ELF)
293     TARGET_XDC = ti.targets.arm.elf.M4
294     FORMAT_EXT = e
295   else
296     TARGET_XDC = ti.targets.arm.M4
297   endif
298   
299   # If ENDIAN is set to "big", set ENDIAN_EXT to "e", that would be used in
300   #    in the filename extension of object/library/executable files
301   ifeq ($(ENDIAN),big)
302     ENDIAN_EXT = e
303   endif
305   # Define the file extensions
306   OBJEXT = o$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
307   LIBEXT = a$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
308   EXEEXT = x$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
309   ASMEXT = s$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
310 endif
312 ifeq ($(ISA),a15)
313   TARGET_XDC = gnu.targets.arm.A15F
314   CFLAGS_LOCAL_a15host += -DGCC_BUILD
315   COMPILER = LINARO_GCC
316   FORMAT_EXT =
317   ENDIAN_EXT = fg
319   # Define the file extensions
320   OBJEXT = o$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
321   OBJEXT_SO = $(OBJEXT)_so
322   LIBEXT = a$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
323   LIBEXT_SO = $(LIBEXT)_so
324   EXEEXT = x$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
325   ASMEXT = s$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
326 endif
328 ifeq ($(ISA),m3)
329   COMPILER = TMS470
330   ifeq ($(FORMAT),ELF)
331     TARGET_XDC = ti.targets.arm.elf.M3
332     FORMAT_EXT = e
333   else
334     TARGET_XDC = ti.targets.arm.M3
335   endif
336   
337   # If ENDIAN is set to "big", set ENDIAN_EXT to "e", that would be used in
338   #    in the filename extension of object/library/executable files
339   ifeq ($(ENDIAN),big)
340     ENDIAN_EXT = e
341   endif
343   # Define the file extensions
344   OBJEXT = o$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
345   LIBEXT = a$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
346   EXEEXT = x$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
347   ASMEXT = s$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
348 endif
350 ifeq ($(ISA),674)
351   COMPILER = C6000
352   ifeq ($(FORMAT),ELF)
353     TARGET_XDC = ti.targets.elf.C674
354     FORMAT_EXT = e
355   else
356     TARGET_XDC = ti.targets.C674
357   endif
358   
359   # If ENDIAN is set to "big", set ENDIAN_EXT to "e", that would be used in
360   #    in the filename extension of object/library/executable files
361   ifeq ($(ENDIAN),big)
362     ENDIAN_EXT = e
363   endif
365   # Define the file extensions
366   OBJEXT = o$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
367   LIBEXT = a$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
368   EXEEXT = x$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
369   ASMEXT = s$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
370 endif
372 ifeq ($(ISA),64p)
373   COMPILER = C6000
374   ifeq ($(FORMAT),ELF)
375    ifeq ($(ENDIAN),big)
376     TARGET_XDC = ti.targets.elf.C64P_big_endian
377    else
378     TARGET_XDC = ti.targets.elf.C64P
379    endif
380     FORMAT_EXT = e
381   else
382    ifeq ($(ENDIAN),big)
383     TARGET_XDC = ti.targets.C64P_big_endian
384    else
385     TARGET_XDC = ti.targets.C64P
386    endif
387   endif
388   
389   # If ENDIAN is set to "big", set ENDIAN_EXT to "e", that would be used in
390   #    in the filename extension of object/library/executable files
391   ifeq ($(ENDIAN),big)
392     ENDIAN_EXT = e
393   endif
395   # Define the file extensions
396   OBJEXT = o$(FORMAT_EXT)64P$(ENDIAN_EXT)
397   LIBEXT = a$(FORMAT_EXT)64P$(ENDIAN_EXT)
398   EXEEXT = x$(FORMAT_EXT)64P$(ENDIAN_EXT)
399   ASMEXT = s$(FORMAT_EXT)64P$(ENDIAN_EXT)
400 endif
402 ifeq ($(ISA),64t)
403   COMPILER = C6000
404   ifeq ($(FORMAT),ELF)
405    ifeq ($(ENDIAN),big)
406     TARGET_XDC = ti.targets.elf.C64T_big_endian
407    else
408     TARGET_XDC = ti.targets.elf.C64T
409    endif
410     FORMAT_EXT = e
411   else
412    ifeq ($(ENDIAN),big)
413     TARGET_XDC = ti.targets.C64T_big_endian
414    else
415     TARGET_XDC = ti.targets.C64T
416    endif
417   endif
418   
419   # If ENDIAN is set to "big", set ENDIAN_EXT to "e", that would be used in
420   #    in the filename extension of object/library/executable files
421   ifeq ($(ENDIAN),big)
422     ENDIAN_EXT = e
423   endif
425   # Define the file extensions
426   OBJEXT = o$(FORMAT_EXT)64T$(ENDIAN_EXT)
427   LIBEXT = a$(FORMAT_EXT)64T$(ENDIAN_EXT)
428   EXEEXT = x$(FORMAT_EXT)64T$(ENDIAN_EXT)
429   ASMEXT = s$(FORMAT_EXT)64T$(ENDIAN_EXT)
430 endif
432 ifeq ($(ISA),66)
433   COMPILER = C6000
434   ifeq ($(FORMAT),ELF)
435    ifeq ($(ENDIAN),big)
436     TARGET_XDC = ti.targets.elf.C66_big_endian
437    else
438     TARGET_XDC = ti.targets.elf.C66
439    endif
440     FORMAT_EXT = e
441   else
442    ifeq ($(ENDIAN),big)
443     TARGET_XDC = ti.targets.C66_big_endian
444    else
445     TARGET_XDC = ti.targets.C66
446    endif
447   endif
448   
449   # If ENDIAN is set to "big", set ENDIAN_EXT to "e", that would be used in
450   #    in the filename extension of object/library/executable files
451   ifeq ($(ENDIAN),big)
452     ENDIAN_EXT = e
453   endif
455   # Define the file extensions
456   OBJEXT = o$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
457   LIBEXT = a$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
458   EXEEXT = x$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
459   ASMEXT = s$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
461 endif
463 ifeq ($(ISA),a8)
464   ifeq ($(TOOLCHAIN_a8),TI)
465     TARGET_XDC = ti.targets.arm.elf.A8F
466     ifeq ($(FORMAT),ELF)
467       FORMAT_EXT = e
468     endif
469     ifeq ($(ENDIAN),big)
470       ENDIAN_EXT = ef
471   else
472     ENDIAN_EXT = f
473     endif
474   COMPILER = TMS470
475   else
476     TARGET_XDC = gnu.targets.arm.A8F
477     CFLAGS_LOCAL_a8host += -DGCC_BUILD
478   FORMAT_EXT =
479   ENDIAN_EXT = fg
480   COMPILER = LINARO_GCC
481   endif
483   # Define the file extensions
484   OBJEXT = o$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
485   LIBEXT = a$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
486   EXEEXT = x$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
487   ASMEXT = s$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
488 endif
490 ifeq ($(ISA),arm9)
491   COMPILER = TMS470
492   TARGET_XDC = ti.targets.arm.elf.Arm9
493   ifeq ($(FORMAT),ELF)
494     FORMAT_EXT = e
495   endif
496   ifeq ($(ENDIAN),big)
497     ENDIAN_EXT = e
498   endif
500   # Define the file extensions
501   OBJEXT = o$(FORMAT_EXT)9$(ENDIAN_EXT)
502   LIBEXT = a$(FORMAT_EXT)9$(ENDIAN_EXT)
503   EXEEXT = x$(FORMAT_EXT)9$(ENDIAN_EXT)
504   ASMEXT = s$(FORMAT_EXT)9$(ENDIAN_EXT)
505 endif
507 ifeq ($(ISA),arp32)
508   ifeq ($(FORMAT),ELF)
509     TARGET_XDC = ti.targets.arp32.elf.ARP32_far
510     ENDIAN_EXT = f
511     FORMAT_EXT = e
512   else
513     TARGET_XDC = ti.targets.arp32.elf.ARP32
514   endif
516   # If ENDIAN is set to "big", set ENDIAN_EXT to "e", that would be used in
517   #    in the filename extension of object/library/executable files
518   ifeq ($(ENDIAN),big)
519     ENDIAN_EXT = e
520   endif
522   # Define the file extensions
523   OBJEXT = o$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
524   LIBEXT = a$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
525   EXEEXT = x$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
526   ASMEXT = s$(FORMAT_EXT)$(ISA)$(ENDIAN_EXT)
527 endif
529 ifeq (sim,$(findstring sim,$(PLATFORM)))
530   OMX_PLATFORM = sim
531 endif
532 export COMPILER
533 ifeq (ti816x-evm,$(findstring ti816x-evm,$(PLATFORM)))
534  # Don't know why platform define for XDC is separate for A8. TO DO.
535  ifeq ($(CORE),a8host)
536   OMX_PLATFORM = evmSi
537  else
538   OMX_PLATFORM = evmSi816X
539  endif
540 endif
542 ifeq ($(CORE),m3vpss)
543   CFGARGS_XDC = \"{mode: \\\"$(IPC_MODE)\\\", coreName: \\\"VPSS-M3\\\", tiler: \\\"DucatiTilerMemMgr\\\", platformMem: \\\"$(PLATFORM_MEM)\\\", maxResolution: \\\"$(MAX_RESOLUTION)\\\", omxBuildPlatform: \\\"$(OMX_PLATFORM)\\\"}\"
544 endif
545 ifeq ($(CORE),m3video)
546   CFGARGS_XDC = \"{mode: \\\"$(IPC_MODE)\\\", coreName:\\\"VIDEO-M3\\\", tiler: \\\"DucatiTilerMemMgr\\\", platformMem: \\\"$(PLATFORM_MEM)\\\", maxResolution: \\\"$(MAX_RESOLUTION)\\\", omxBuildPlatform: \\\"$(OMX_PLATFORM)\\\"}\"
547 endif
548 ifeq ($(CORE),c6xdsp)
549   CFGARGS_XDC = 
550 endif
551 ifeq ($(CORE),a8host)
552   CFGARGS_XDC = \"{mode: \\\"$(IPC_MODE)\\\", coreName:\\\"HOST\\\", tiler: \\\"NullTilerMemMgr\\\", platformMem: \\\"$(PLATFORM_MEM)\\\", maxResolution: \\\"$(MAX_RESOLUTION)\\\", omxBuildPlatform: \\\"$(OMX_PLATFORM)\\\"}\"
553 endif
555 # Nothing beyond this point