1 ################################################################################
2 # Configure toolchain paths
3 ################################################################################
4 # This section applies to all broader set of boards with SOCs beyond TDA class
5 # in Processor SDK RTOS release
6 PDK_VERSION_STR=_$(PDK_SOC)_$(PDK_VERSION)
7 ifeq ($(PDK_VERSION),)
8 PDK_VERSION_STR=
9 endif
11 #Tool versions for non-TDA builds
12 GCC_CROSS_TOOL_PREFIX=arm-none-eabi-
13 GCC_CROSS_TOOL_TAG=9-2019-q4-major
14 GCC_ARCH64_VERSION=9.2-2019.12
15 GCC_ARCH64_BIN_PREFIX_STR=aarch64-none-elf
16 CGT_VERSION=8.3.2
17 BIOS_VERSION=6_82_01_19
18 XDC_VERSION=3_61_00_16_core
20 CGT_C7X_VERSION=1.3.0.STS
21 CGT_ARM_VERSION=20.2.0.LTS
22 GCC_VERSION_HARDLIB=9.2.1
24 CGT_ARP32_VERSION=1.0.8
25 CG_XML_VERSION=2.61.00
27 ifeq ($(BOARD),$(filter $(BOARD), am65xx_evm am65xx_idk j721e_evm j7200_evm am64x_evm))
28 GCC_ARCH64_BIN_PREFIX_STR=aarch64-none-elf
29 endif
31 ifeq ($(BOARD),$(filter $(BOARD), tpr12_evm tpr12_qt))
32 BIOS_VERSION=6_82_00_16
33 XDC_VERSION=3_61_00_16_core
34 CGT_VERSION=8.3.3
35 CGT_ARM_VERSION=18.12.5.LTS
36 endif
38 ifeq ($(BOARD),$(filter $(BOARD), am64x_evm))
39 BIOS_VERSION=6_82_02_20_eng
40 XDC_VERSION=3_61_00_16_core
41 GCC_ARCH64_VERSION=7.2.1-2017.11
42 GCC_ARCH64_BIN_PREFIX_STR=aarch64-elf
43 CGT_ARM_VERSION=18.12.5.LTS
44 endif
46 EDMA_VERSION=2_12_05_30E
47 SECDEV_VERSION=01_06_00_05
48 CGT_PRU_VERSION=2.3.2
50 #Hardcode IPC version if it is not set already
51 IPC_VERSION=3_50_04_08
52 NDK_VERSION=3_61_01_01
53 NS_VERSION=2_60_01_06
55 ifeq ($(BOARD),$(filter $(BOARD), am65xx_evm am65xx_idk j721e_evm j7200_evm))
56 NDK_VERSION=3_75_01_01
57 NS_VERSION=2_75_00_17
58 endif
60 UIA_VERSION=2_30_01_02
61 XDAIS_VERSION=7_24_00_04
62 AER_VERSION=17_0_0_0
64 # C674x DSP libraries sould be used for OMAPL13x platform
65 ifeq ($(SOC),$(filter $(SOC), omapl137 omapl138))
66 DSPLIB_VERSION ?= c674x_3_4_0_4
67 IMGLIB_VERSION ?= c674x_3_1_1_0
68 MATHLIB_VERSION ?= c674x_3_1_2_4
69 else
70 DSPLIB_VERSION ?= c66x_3_4_0_4
71 IMGLIB_VERSION ?= c66x_3_1_1_0
72 MATHLIB_VERSION ?= c66x_3_1_2_4
73 endif
75 export GCC_FLOAT_PATH ?= HARD
77 ################################################################################
78 # Dependent toolchain paths variables
79 ################################################################################
80 # Version of GCC
81 GCC_VERSION=$(GCC_CROSS_TOOL_PREFIX)$(GCC_CROSS_TOOL_TAG)
82 GCC_VERSION_ARM_A15=$(GCC_CROSS_TOOL_PREFIX)$(GCC_CROSS_TOOL_TAG)
83 export GCC_VERSION_ARM_A8=$(GCC_CROSS_TOOL_PREFIX)$(GCC_CROSS_TOOL_TAG)
84 export GCC_VERSION_ARM_A9=$(GCC_CROSS_TOOL_PREFIX)$(GCC_CROSS_TOOL_TAG)
85 export CROSS_TOOL_PRFX ?= $(GCC_CROSS_TOOL_PREFIX)
86 export C6X_GEN_INSTALL_PATH ?= $(TOOLS_INSTALL_PATH)/ti-cgt-c6000_$(CGT_VERSION)
87 export C7X_GEN_INSTALL_PATH ?= $(TOOLS_INSTALL_PATH)/ti-cgt-c7000_$(CGT_C7X_VERSION)
88 export CL_PRU_INSTALL_PATH ?= $(TOOLS_INSTALL_PATH)/ti-cgt-pru_$(CGT_PRU_VERSION)
89 export TOOLCHAIN_PATH_A8 ?= $(TOOLS_INSTALL_PATH)/gcc-$(GCC_VERSION_ARM_A8)
90 export TOOLCHAIN_PATH_A9 ?= $(TOOLS_INSTALL_PATH)/gcc-$(GCC_VERSION_ARM_A9)
91 export TOOLCHAIN_PATH_Arm9 ?= $(TOOLS_INSTALL_PATH)/ti-cgt-arm_$(CGT_ARM_VERSION)
92 export TOOLCHAIN_PATH_A15 ?= $(TOOLS_INSTALL_PATH)/gcc-$(GCC_VERSION_ARM_A15)
94 ifeq ($(BOARD),$(filter $(BOARD), am64x_evm))
95 ifeq ($(OS),Windows_NT)
96 #Paths for windows machine
97 export TOOLCHAIN_PATH_GCC_ARCH64 ?= $(TOOLS_INSTALL_PATH)/gcc-linaro-$(GCC_ARCH64_VERSION)-mingw-w64-i686_aarch64-elf
98 else
99 #Paths for linux machine
100 export TOOLCHAIN_PATH_GCC_ARCH64 ?= $(TOOLS_INSTALL_PATH)/gcc-linaro-$(GCC_ARCH64_VERSION)-x86_64_aarch64-elf
101 endif
102 else
103 ifeq ($(OS),Windows_NT)
104 #Paths for windows machine
105 export TOOLCHAIN_PATH_GCC_ARCH64 ?= $(TOOLS_INSTALL_PATH)/gcc-arm-$(GCC_ARCH64_VERSION)-mingw-w64-i686-aarch64-none-elf
106 else
107 #Paths for linux machine
108 export TOOLCHAIN_PATH_GCC_ARCH64 ?= $(TOOLS_INSTALL_PATH)/gcc-arm-$(GCC_ARCH64_VERSION)-x86_64-aarch64-none-elf
109 endif
110 endif
111 export GCC_ARCH64_BIN_PREFIX ?= $(GCC_ARCH64_BIN_PREFIX_STR)
113 export TOOLCHAIN_PATH_QNX_A72 ?= $(QNX_HOST)/usr/bin
114 export TOOLCHAIN_PATH_A53 ?= $(TOOLCHAIN_PATH_GCC_ARCH64)
115 export TOOLCHAIN_PATH_A72 ?= $(TOOLCHAIN_PATH_GCC_ARCH64)
116 export TOOLCHAIN_PATH_EVE ?= $(TOOLS_INSTALL_PATH)/arp32_$(CGT_ARP32_VERSION)
117 export TOOLCHAIN_PATH_M4 ?= $(TOOLS_INSTALL_PATH)/ti-cgt-arm_$(CGT_ARM_VERSION)
118 export TOOLCHAIN_PATH_R5 ?= $(TOOLS_INSTALL_PATH)/ti-cgt-arm_$(CGT_ARM_VERSION)
119 export BIOS_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/bios_$(BIOS_VERSION)
120 export DSPLIB_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/dsplib_$(DSPLIB_VERSION)
121 export EDMA3LLD_BIOS6_INSTALLDIR ?= $(SDK_INSTALL_PATH)/edma3_lld_$(EDMA_VERSION)
122 export IMGLIB_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/imglib_$(IMGLIB_VERSION)
123 export IPC_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/ipc_$(IPC_VERSION)
124 export MATHLIB_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/mathlib_$(MATHLIB_VERSION)
125 export NDK_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/ndk_$(NDK_VERSION)
126 export NS_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/ns_$(NS_VERSION)
127 export PDK_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/pdk$(PDK_VERSION_STR)/packages
128 export UIA_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/uia_$(UIA_VERSION)
129 export XDC_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/xdctools_$(XDC_VERSION)
130 export UTILS_INSTALL_DIR ?= $(XDC_INSTALL_PATH)/bin
131 export RADARLINK_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/$(mmwavelink_version)
132 export CG_XML_BIN_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/cg_xml_$(CG_XML_VERSION)/bin
133 export TI_SECURE_DEV_PKG ?= $(SDK_INSTALL_PATH)/proc-sdk-secdev_$(SECDEV_VERSION)
134 export XDAIS_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/xdais_$(XDAIS_VERSION)
135 export AER_INSTALL_PATH ?= $(SDK_INSTALL_PATH)/aer_c64Px_obj_$(AER_VERSION)
136 export GCC_ARM_NONE_TOOLCHAIN ?= $(SDK_INSTALL_PATH)/gcc-$(GCC_CROSS_TOOL_PREFIX)$(GCC_CROSS_TOOL_TAG)
137 export TI_CGT6x_INSTALL_DIR ?= $(SDK_INSTALL_PATH)/c6000_7.4.16
138 export M4_TOOLCHAIN_INSTALL_DIR ?= $(TOOLCHAIN_PATH_M4)
140 ifeq ($(SOC),$(filter $(SOC), am335x))
141 export HARDLIB_PATH ?= $(TOOLCHAIN_PATH_A8)/lib/gcc/arm-none-eabi/$(GCC_VERSION_HARDLIB)
142 export FPULIB_PATH ?= $(TOOLCHAIN_PATH_A8)/lib/gcc/arm-none-eabi/$(GCC_VERSION_FPULIB)/fpu
143 else ifeq ($(SOC),$(filter $(SOC), am437x))
144 export HARDLIB_PATH ?= $(TOOLCHAIN_PATH_A9)/lib/gcc/arm-none-eabi/$(GCC_VERSION_HARDLIB)
145 export FPULIB_PATH ?= $(TOOLCHAIN_PATH_A9)/lib/gcc/arm-none-eabi/$(GCC_VERSION_FPULIB)/fpu
146 else
147 export HARDLIB_PATH ?= $(TOOLCHAIN_PATH_A15)/lib/gcc/arm-none-eabi/$(GCC_VERSION_HARDLIB)
148 export FPULIB_PATH ?= $(TOOLCHAIN_PATH_A15)/lib/gcc/arm-none-eabi/$(GCC_VERSION_FPULIB)/fpu
149 endif
151 # Utilities directory. This is required only if the build machine is Windows.
152 # - specify the installation directory of utility which supports POSIX commands
153 # (eg: Cygwin installation or MSYS installation).
154 # This could be in CCS install directory as in c:/ti/ccsv<ver>/utils/cygwin or
155 # the XDC install bin folder represented by $(UTILS_INSTALL_DIR)
156 ifeq ($(OS),Windows_NT)
157 export utils_PATH ?= $(UTILS_INSTALL_DIR)
158 endif