#
ifeq ($(sbl_component_make_include), )
-sbl_BOARDLIST = am65xx_evm am65xx_idk j721e_evm am64x_evm
+sbl_BOARDLIST = am65xx_evm am65xx_idk j721e_evm j7200_evm am64x_evm tpr12_evm tpr12_qt
-sbl_SOCLIST = am65xx j721e am64x
+sbl_SOCLIST = am65xx j721e j7200 am64x tpr12
am65xx_smp_CORELIST := mcu1_0 mpu1_0 mpu2_0
sbl_am65xx_CORELIST := mcu1_0 mcu1_1 mpu1_0 mpu1_1 mpu2_0 mpu2_1
sbl_j721e_CORELIST := mcu1_0 mcu1_1 mcu2_0 mcu2_1 mcu3_0 mcu3_1 mpu1_0 mpu1_1
j721e_LASTCORE := $(word $(words $(sbl_j721e_CORELIST)), $(sbl_j721e_CORELIST))
+j7200_smp_CORELIST := mcu1_0 mcu2_0 mpu1_0
+sbl_j7200_CORELIST := mcu1_0 mcu1_1 mcu2_0 mcu2_1 mpu1_0 mpu1_1
+j7200_LASTCORE := $(word $(words $(sbl_j7200_CORELIST)), $(sbl_j7200_CORELIST))
+
am64x_smp_CORELIST := mcu1_0 mcu2_0 mpu1_0
sbl_am64x_CORELIST := mpu1_0 mcu1_0 mcu1_1 mcu2_0 mcu2_1 mpu1_0 mpu1_1
am64x_LASTCORE := $(word $(words $(sbl_am64x_CORELIST)), $(sbl_am64x_CORELIST))
+sbl_tpr12_CORELIST := mcu1_0 mcu1_1 c66xdsp_1
+tpr12_LASTCORE := $(word $(words $(sbl_tpr12_CORELIST)), $(sbl_tpr12_CORELIST))
+
+
sbl_DISABLE_PARALLEL_MAKE = yes
############################
# sbl package
############################
ifeq ($(SOC), am64x)
-sbl_LIB_LIST = sbl_lib_ospi_nondma
+sbl_LIB_LIST = sbl_lib_ospi_nondma sbl_lib_cust sbl_lib_mmcsd sbl_lib_uart
+sbl_LIB_LIST += sbl_lib_mmcsd_hlos sbl_lib_ospi_nondma_hlos
else
-sbl_LIB_LIST = sbl_lib_mmcsd sbl_lib_ospi sbl_lib_uart sbl_lib_hyperflash sbl_lib_cust
-sbl_LIB_LIST += sbl_lib_ospi_nondma
+ ifeq ($(SOC), j7200)
+ sbl_LIB_LIST = sbl_lib_mmcsd sbl_lib_mmcsd_hlos sbl_lib_ospi sbl_lib_ospi_hlos sbl_lib_uart sbl_lib_cust
+ else
+ ifeq ($(SOC), tpr12)
+ sbl_LIB_LIST = sbl_lib_uart
+ sbl_LIB_LIST += sbl_lib_qspi sbl_lib_qspi_nondma
+ else
+ sbl_LIB_LIST = sbl_lib_mmcsd sbl_lib_ospi sbl_lib_uart sbl_lib_hyperflash sbl_lib_cust
+ sbl_LIB_LIST += sbl_lib_mmcsd_hlos sbl_lib_ospi_hlos sbl_lib_hyperflash_hlos
+ sbl_LIB_LIST += sbl_lib_ospi_nondma sbl_lib_ospi_nondma_hlos
+ endif
+ endif
endif
############################
# All the tests mentioned in list are built when test target is called
# List below all examples for allowed values
############################
-ifeq ($(SOC), am64x)
-sbl_EXAMPLE_LIST = sbl_ospi_img
+ifeq ($(SOC),$(filter $(SOC), am64x))
+sbl_EXAMPLE_LIST = sbl_ospi_img sbl_mmcsd_img sbl_uart_img sbl_mmcsd_img_hlos sbl_ospi_img_hlos
else
-sbl_EXAMPLE_LIST = sbl_mmcsd_img sbl_ospi_img sbl_hyperflash_img sbl_uart_img
-sbl_EXAMPLE_LIST += sbl_mmcsd_img_hs sbl_ospi_img_hs sbl_hyperflash_img_hs sbl_uart_img_hs
+ ifeq ($(SOC), j7200)
+ sbl_EXAMPLE_LIST = sbl_mmcsd_img sbl_mmcsd_img_hlos sbl_ospi_img sbl_ospi_img_hlos sbl_uart_img
+ else
+ ifeq ($(SOC), tpr12)
+ sbl_EXAMPLE_LIST = sbl_uart_img sbl_qspi_img
+ else
+ sbl_EXAMPLE_LIST = sbl_uart_img
+ sbl_EXAMPLE_LIST += sbl_mmcsd_img sbl_mmcsd_img_hlos sbl_ospi_img sbl_ospi_img_hlos sbl_hyperflash_img sbl_hyperflash_img_hlos
+ sbl_EXAMPLE_LIST += sbl_mmcsd_img_hs sbl_ospi_img_hs sbl_hyperflash_img_hs sbl_uart_img_hs
+ sbl_EXAMPLE_LIST += sbl_mmcsd_img_hlos_hs sbl_ospi_img_hlos_hs sbl_hyperflash_img_hlos_hs
+ endif
+ endif
endif
+
#
# SBL Modules
#
sbl_lib_mmcsd_$(SOC)_CORELIST = mcu1_0
export sbl_lib_mmcsd_$(SOC)_CORELIST
+# SBL MMCSD HLOS LIB
+sbl_lib_mmcsd_hlos_COMP_LIST = sbl_lib_mmcsd_hlos
+sbl_lib_mmcsd_hlos_RELPATH = ti/boot/sbl
+export sbl_lib_mmcsd_hlos_OBJPATH = ti/boot/sbl/mmcsd_hlos
+sbl_lib_mmcsd_hlos_LIBNAME = sbl_lib_mmcsd_hlos
+sbl_lib_mmcsd_hlos_PATH = $(PDK_SBL_COMP_PATH)
+sbl_lib_mmcsd_hlos_LIBPATH = $(PDK_SBL_COMP_PATH)/lib/mmcsd_hlos
+sbl_lib_mmcsd_hlos_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_lib.mk BOOTMODE=mmcsd HLOS_BOOT=yes SBL_USE_DMA=yes
+export sbl_lib_mmcsd_hlos_MAKEFILE
+export sbl_lib_mmcsd_hlos_LIBNAME
+export sbl_lib_mmcsd_hlos_LIBPATH
+sbl_lib_mmcsd_hlos_BOARD_DEPENDENCY = yes
+sbl_lib_mmcsd_hlos_SOC_DEPENDENCY = yes
+sbl_lib_mmcsd_hlos_CORE_DEPENDENCY = no
+export sbl_lib_mmcsd_hlos_COMP_LIST
+export sbl_lib_mmcsd_hlos_BOARD_DEPENDENCY
+export sbl_lib_mmcsd_hlos_CORE_DEPENDENCY
+sbl_lib_mmcsd_hlos_PKG_LIST = sbl_lib_mmcsd_hlos
+sbl_lib_mmcsd_hlos_INCLUDE = $(sbl_lib_mmcsd_hlos_PATH)
+sbl_lib_mmcsd_hlos_SOCLIST = $(sbl_SOCLIST)
+sbl_lib_mmcsd_hlos_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_lib_mmcsd_hlos_SOCLIST
+export sbl_lib_mmcsd_hlos_BOARDLIST
+sbl_lib_mmcsd_hlos_$(SOC)_CORELIST = mcu1_0
+export sbl_lib_mmcsd_hlos_$(SOC)_CORELIST
+
# SBL OSPI LIB
sbl_lib_ospi_COMP_LIST = sbl_lib_ospi
sbl_lib_ospi_RELPATH = ti/boot/sbl
sbl_lib_ospi_$(SOC)_CORELIST = mcu1_0
export sbl_lib_ospi_$(SOC)_CORELIST
-# SBL OSPI LIB with NON-DMA - Needed for HS SBL
+# SBL OSPI HLOS LIB
+sbl_lib_ospi_hlos_COMP_LIST = sbl_lib_ospi_hlos
+sbl_lib_ospi_hlos_RELPATH = ti/boot/sbl
+export sbl_lib_ospi_hlos_OBJPATH = ti/boot/sbl/ospi_hlos
+sbl_lib_ospi_hlos_LIBNAME = sbl_lib_ospi_hlos
+sbl_lib_ospi_hlos_PATH = $(PDK_SBL_COMP_PATH)
+sbl_lib_ospi_hlos_LIBPATH = $(PDK_SBL_COMP_PATH)/lib/ospi_hlos
+sbl_lib_ospi_hlos_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_lib.mk BOOTMODE=ospi HLOS_BOOT=yes SBL_USE_DMA=yes
+export sbl_lib_ospi_hlos_MAKEFILE
+export sbl_lib_ospi_hlos_LIBNAME
+export sbl_lib_ospi_hlos_LIBPATH
+sbl_lib_ospi_hlos_BOARD_DEPENDENCY = yes
+sbl_lib_ospi_hlos_SOC_DEPENDENCY = yes
+sbl_lib_ospi_hlos_CORE_DEPENDENCY = no
+export sbl_lib_ospi_hlos_COMP_LIST
+export sbl_lib_ospi_hlos_BOARD_DEPENDENCY
+export sbl_lib_ospi_hlos_CORE_DEPENDENCY
+sbl_lib_ospi_hlos_PKG_LIST = sbl_lib_ospi_hlos
+sbl_lib_ospi_hlos_INCLUDE = $(sbl_lib_ospi_hlos_PATH)
+sbl_lib_ospi_hlos_SOCLIST = $(sbl_SOCLIST)
+sbl_lib_ospi_hlos_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_lib_ospi_hlos_SOCLIST
+export sbl_lib_ospi_hlos_BOARDLIST
+sbl_lib_ospi_hlos_$(SOC)_CORELIST = mcu1_0
+export sbl_lib_ospi_hlos_$(SOC)_CORELIST
+
+# SBL OSPI LIB with NON-DMA
export sbl_lib_ospi_nondma_COMP_LIST = sbl_lib_ospi_nondma
sbl_lib_ospi_nondma_RELPATH = ti/boot/sbl
export sbl_lib_ospi_nondma_OBJPATH = ti/boot/sbl/ospi_nondma
export sbl_lib_ospi_nondma_BOARDLIST = $(sbl_BOARDLIST)
export sbl_lib_ospi_nondma_$(SOC)_CORELIST = mcu1_0
+# SBL OSPI HLOS LIB with NON-DMA - Needed for HS SBL, etc.
+export sbl_lib_ospi_nondma_hlos_COMP_LIST = sbl_lib_ospi_nondma_hlos
+sbl_lib_ospi_nondma_hlos_RELPATH = ti/boot/sbl
+export sbl_lib_ospi_nondma_hlos_OBJPATH = ti/boot/sbl/ospi_nondma_hlos
+sbl_lib_ospi_nondma_hlos_PATH = $(PDK_SBL_COMP_PATH)
+export sbl_lib_ospi_nondma_hlos_LIBNAME = sbl_lib_ospi_nondma_hlos
+export sbl_lib_ospi_nondma_hlos_LIBPATH = $(PDK_SBL_COMP_PATH)/lib/ospi_hlos
+export sbl_lib_ospi_nondma_hlos_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_lib.mk BOOTMODE=ospi HLOS_BOOT=yes SBL_USE_DMA=no
+export sbl_lib_ospi_nondma_hlos_BOARD_DEPENDENCY = yes
+export sbl_lib_ospi_nondma_hlos_SOC_DEPENDENCY = yes
+export sbl_lib_ospi_nondma_hlos_CORE_DEPENDENCY = no
+sbl_lib_ospi_nondma_hlos_PKG_LIST = sbl_lib_ospi_nondma_hlos
+sbl_lib_ospi_nondma_hlos_INCLUDE = $(sbl_lib_ospi_nondma_hlos_PATH)
+export sbl_lib_ospi_nondma_hlos_SOCLIST = $(sbl_SOCLIST)
+export sbl_lib_ospi_nondma_hlos_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_lib_ospi_nondma_hlos_$(SOC)_CORELIST = mcu1_0
+
# SBL HYPERFLASH LIB
sbl_lib_hyperflash_COMP_LIST = sbl_lib_hyperflash
sbl_lib_hyperflash_RELPATH = ti/boot/sbl
sbl_lib_hyperflash_$(SOC)_CORELIST = mcu1_0
export sbl_lib_hyperflash_$(SOC)_CORELIST
+# SBL HYPERFLASH HLOS LIB
+sbl_lib_hyperflash_hlos_COMP_LIST = sbl_lib_hyperflash_hlos
+sbl_lib_hyperflash_hlos_RELPATH = ti/boot/sbl
+export sbl_lib_hyperflash_hlos_OBJPATH = ti/boot/sbl/hyperflash_hlos
+sbl_lib_hyperflash_hlos_LIBNAME = sbl_lib_hyperflash_hlos
+sbl_lib_hyperflash_hlos_PATH = $(PDK_SBL_COMP_PATH)
+sbl_lib_hyperflash_hlos_LIBPATH = $(PDK_SBL_COMP_PATH)/lib/hyperflash_hlos
+sbl_lib_hyperflash_hlos_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_lib.mk BOOTMODE=hyperflash HLOS_BOOT=yes SBL_USE_DMA=yes
+export sbl_lib_hyperflash_hlos_MAKEFILE
+export sbl_lib_hyperflash_hlos_LIBNAME
+export sbl_lib_hyperflash_hlos_LIBPATH
+sbl_lib_hyperflash_hlos_BOARD_DEPENDENCY = yes
+sbl_lib_hyperflash_hlos_SOC_DEPENDENCY = yes
+sbl_lib_hyperflash_hlos_CORE_DEPENDENCY = no
+export sbl_lib_hyperflash_hlos_COMP_LIST
+export sbl_lib_hyperflash_hlos_BOARD_DEPENDENCY
+export sbl_lib_hyperflash_hlos_CORE_DEPENDENCY
+sbl_lib_hyperflash_hlos_PKG_LIST = sbl_lib_hyperflash_hlos
+sbl_lib_hyperflash_hlos_INCLUDE = $(sbl_lib_hyperflash_hlos_PATH)
+sbl_lib_hyperflash_hlos_SOCLIST = j721e
+sbl_lib_hyperflash_hlos_BOARDLIST = j721e_evm
+export sbl_lib_hyperflash_hlos_SOCLIST
+export sbl_lib_hyperflash_hlos_BOARDLIST
+sbl_lib_hyperflash_hlos_$(SOC)_CORELIST = mcu1_0
+export sbl_lib_hyperflash_hlos_$(SOC)_CORELIST
+
# SBL UART LIB
sbl_lib_uart_COMP_LIST = sbl_lib_uart
sbl_lib_uart_RELPATH = ti/boot/sbl
sbl_lib_uart_$(SOC)_CORELIST = mcu1_0
export sbl_lib_uart_$(SOC)_CORELIST
+# SBL QSPI LIB
+sbl_lib_qspi_COMP_LIST = sbl_lib_qspi
+sbl_lib_qspi_RELPATH = ti/boot/sbl
+export sbl_lib_qspi_OBJPATH = ti/boot/sbl/qspi
+sbl_lib_qspi_LIBNAME = sbl_lib_qspi
+sbl_lib_qspi_PATH = $(PDK_SBL_COMP_PATH)
+sbl_lib_qspi_LIBPATH = $(PDK_SBL_COMP_PATH)/lib/qspi
+sbl_lib_qspi_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_lib.mk BOOTMODE=qspi SBL_USE_DMA=yes
+export sbl_lib_qspi_MAKEFILE
+export sbl_lib_qspi_LIBNAME
+export sbl_lib_qspi_LIBPATH
+sbl_lib_qspi_BOARD_DEPENDENCY = yes
+sbl_lib_qspi_SOC_DEPENDENCY = yes
+sbl_lib_qspi_CORE_DEPENDENCY = no
+export sbl_lib_qspi_COMP_LIST
+export sbl_lib_qspi_BOARD_DEPENDENCY
+export sbl_lib_qspi_CORE_DEPENDENCY
+sbl_lib_qspi_PKG_LIST = sbl_lib_qspi
+sbl_lib_qspi_INCLUDE = $(sbl_lib_qspi_PATH)
+sbl_lib_qspi_SOCLIST = tpr12
+sbl_lib_qspi_BOARDLIST = tpr12_evm tpr12_qt
+export sbl_lib_qspi_SOCLIST
+export sbl_lib_qspi_BOARDLIST
+sbl_lib_qspi_$(SOC)_CORELIST = mcu1_0
+export sbl_lib_qspi_$(SOC)_CORELIST
+
+# SBL QSPI LIB with NON-DMA - Needed for HS SBL, etc.
+export sbl_lib_qspi_nondma_COMP_LIST = sbl_lib_qspi_nondma
+sbl_lib_qspi_nondma_RELPATH = ti/boot/sbl
+export sbl_lib_qspi_nondma_OBJPATH = ti/boot/sbl/qspi_nondma
+sbl_lib_qspi_nondma_PATH = $(PDK_SBL_COMP_PATH)
+export sbl_lib_qspi_nondma_LIBNAME = sbl_lib_qspi_nondma
+export sbl_lib_qspi_nondma_LIBPATH = $(PDK_SBL_COMP_PATH)/lib/qspi
+export sbl_lib_qspi_nondma_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_lib.mk BOOTMODE=qspi SBL_USE_DMA=no
+export sbl_lib_qspi_nondma_BOARD_DEPENDENCY = yes
+export sbl_lib_qspi_nondma_SOC_DEPENDENCY = yes
+export sbl_lib_qspi_nondma_CORE_DEPENDENCY = no
+sbl_lib_qspi_nondma_PKG_LIST = sbl_lib_qspi_nondma
+sbl_lib_qspi_nondma_INCLUDE = $(sbl_lib_qspi_nondma_PATH)
+export sbl_lib_qspi_nondma_SOCLIST = tpr12
+export sbl_lib_qspi_nondma_BOARDLIST = tpr12_evm tpr12_qt
+export sbl_lib_qspi_nondma_$(SOC)_CORELIST = mcu1_0
+
#
# SBL Examples
#
sbl_mmcsd_img_SBL_IMAGEGEN = yes
export sbl_mmcsd_img_SBL_IMAGEGEN
+# SBL MMCSD "HLOS Boot" Image
+sbl_mmcsd_img_hlos_COMP_LIST = sbl_mmcsd_img_hlos
+sbl_mmcsd_img_hlos_RELPATH = ti/boot/sbl/board/k3
+sbl_mmcsd_img_hlos_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)/mmcsd/bin
+sbl_mmcsd_img_hlos_PATH = $(PDK_SBL_COMP_PATH)/board/k3
+sbl_mmcsd_img_hlos_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=mmcsd HLOS_BOOT=yes SBL_USE_DMA=yes BUILD_HS=no
+export sbl_mmcsd_img_hlos_MAKEFILE
+export sbl_mmcsd_img_hlos_SBL_CERT_KEY=$(SBL_CERT_KEY)
+sbl_mmcsd_img_hlos_BOARD_DEPENDENCY = yes
+sbl_mmcsd_img_hlos_SOC_DEPENDENCY = yes
+sbl_mmcsd_img_hlos_CORE_DEPENDENCY = no
+export sbl_mmcsd_img_hlos_COMP_LIST
+export sbl_mmcsd_img_hlos_BOARD_DEPENDENCY
+export sbl_mmcsd_img_hlos_SOC_DEPENDENCY
+export sbl_mmcsd_img_hlos_CORE_DEPENDENCY
+sbl_mmcsd_img_hlos_PKG_LIST = sbl
+sbl_mmcsd_img_hlos_INCLUDE = $(sbl_mmcsd_img_hlos_PATH)
+sbl_mmcsd_img_hlos_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_mmcsd_img_hlos_BOARDLIST
+sbl_mmcsd_img_hlos_$(SOC)_CORELIST = mcu1_0
+export sbl_mmcsd_img_hlos_$(SOC)_CORELIST
+sbl_mmcsd_img_hlos_SBL_IMAGEGEN = yes
+export sbl_mmcsd_img_hlos_SBL_IMAGEGEN
+
# SBL MMCSD Image - For HS build
export sbl_mmcsd_img_hs_COMP_LIST = sbl_mmcsd_img_hs
sbl_mmcsd_img_hs_RELPATH = ti/boot/sbl/board/k3
sbl_mmcsd_img_hs_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)_hs/mmcsd/bin
-sbl_mmcsd_img_hs_PATH = $(PDK_SBL_COMP_PATH)/board/k3
+#Note: The below variable is purposefully set to build folder - different than
+#non-hs app.
+#The APPNAME or app -C directory (_PATH variable) should be unique as the complier
+#creates lto_$APPNAME optimization file in the directory in which -C is called
+#Because of this multiple lto_ files with same name can be created if app name
+#and app path are same
+sbl_mmcsd_img_hs_PATH = $(PDK_SBL_COMP_PATH)/build
export sbl_mmcsd_img_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=mmcsd SBL_USE_DMA=yes BUILD_HS=yes
export sbl_mmcsd_img_hs_SBL_CERT_KEY=$(SBL_CERT_KEY_HS)
export sbl_mmcsd_img_hs_BOARD_DEPENDENCY = yes
export sbl_mmcsd_img_hs_$(SOC)_CORELIST = mcu1_0
export sbl_mmcsd_img_hs_SBL_IMAGEGEN = yes
+# SBL MMCSD "HLOS Boot" Image - For HS build
+export sbl_mmcsd_img_hlos_hs_COMP_LIST = sbl_mmcsd_img_hlos_hs
+sbl_mmcsd_img_hlos_hs_RELPATH = ti/boot/sbl/board/k3
+sbl_mmcsd_img_hlos_hs_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)_hs/mmcsd/bin
+#Note: The below variable is purposefully set to build folder - different than
+#non-hs app.
+#The APPNAME or app -C directory (_PATH variable) should be unique as the complier
+#creates lto_$APPNAME optimization file in the directory in which -C is called
+#Because of this multiple lto_ files with same name can be created if app name
+#and app path are same
+sbl_mmcsd_img_hlos_hs_PATH = $(PDK_SBL_COMP_PATH)/build
+export sbl_mmcsd_img_hlos_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=mmcsd HLOS_BOOT=yes SBL_USE_DMA=yes BUILD_HS=yes
+export sbl_mmcsd_img_hlos_hs_SBL_CERT_KEY=$(SBL_CERT_KEY_HS)
+export sbl_mmcsd_img_hlos_hs_BOARD_DEPENDENCY = yes
+export sbl_mmcsd_img_hlos_hs_SOC_DEPENDENCY = yes
+export sbl_mmcsd_img_hlos_hs_CORE_DEPENDENCY = no
+sbl_mmcsd_img_hlos_hs_PKG_LIST = sbl
+sbl_mmcsd_img_hlos_hs_INCLUDE = $(sbl_mmcsd_img_hlos_hs_PATH)
+export sbl_mmcsd_img_hlos_hs_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_mmcsd_img_hlos_hs_$(SOC)_CORELIST = mcu1_0
+export sbl_mmcsd_img_hlos_hs_SBL_IMAGEGEN = yes
+
+
# SBL OSPI Image
sbl_ospi_img_COMP_LIST = sbl_ospi_img
sbl_ospi_img_RELPATH = ti/boot/sbl/board/k3
sbl_ospi_img_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)/ospi/bin
sbl_ospi_img_PATH = $(PDK_SBL_COMP_PATH)/board/k3
-sbl_ospi_img_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=ospi SBL_USE_DMA=yes BUILD_HS=no
+ifeq ($(SOC),$(filter $(SOC), am64x))
+ sbl_ospi_img_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=ospi SBL_USE_DMA=no BUILD_HS=no
+else
+ sbl_ospi_img_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=ospi SBL_USE_DMA=yes BUILD_HS=no
+endif
export sbl_ospi_img_MAKEFILE
export sbl_ospi_img_SBL_CERT_KEY=$(SBL_CERT_KEY)
sbl_ospi_img_BOARD_DEPENDENCY = yes
sbl_ospi_img_SBL_IMAGEGEN = yes
export sbl_ospi_img_SBL_IMAGEGEN
+# SBL OSPI "HLOS Boot" Image
+sbl_ospi_img_hlos_COMP_LIST = sbl_ospi_img_hlos
+sbl_ospi_img_hlos_RELPATH = ti/boot/sbl/board/k3
+sbl_ospi_img_hlos_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)/ospi/bin
+sbl_ospi_img_hlos_PATH = $(PDK_SBL_COMP_PATH)/board/k3
+ifeq ($(SOC),$(filter $(SOC), am64x))
+ sbl_ospi_img_hlos_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=ospi HLOS_BOOT=yes SBL_USE_DMA=no BUILD_HS=no
+else
+ sbl_ospi_img_hlos_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=ospi HLOS_BOOT=yes SBL_USE_DMA=yes BUILD_HS=no
+endif
+export sbl_ospi_img_hlos_MAKEFILE
+export sbl_ospi_img_hlos_SBL_CERT_KEY=$(SBL_CERT_KEY)
+sbl_ospi_img_hlos_BOARD_DEPENDENCY = yes
+sbl_ospi_img_hlos_SOC_DEPENDENCY = yes
+sbl_ospi_img_hlos_CORE_DEPENDENCY = no
+export sbl_ospi_img_hlos_COMP_LIST
+export sbl_ospi_img_hlos_BOARD_DEPENDENCY
+export sbl_ospi_img_hlos_SOC_DEPENDENCY
+export sbl_ospi_img_hlos_CORE_DEPENDENCY
+sbl_ospi_img_hlos_PKG_LIST = sbl
+sbl_ospi_img_hlos_INCLUDE = $(sbl_ospi_img_hlos_PATH)
+sbl_ospi_img_hlos_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_ospi_img_hlos_BOARDLIST
+sbl_ospi_img_hlos_$(SOC)_CORELIST = mcu1_0
+export sbl_ospi_img_hlos_$(SOC)_CORELIST
+sbl_ospi_img_hlos_SBL_IMAGEGEN = yes
+export sbl_ospi_img_hlos_SBL_IMAGEGEN
+
# SBL OSPI Image - For HS build
export sbl_ospi_img_hs_COMP_LIST = sbl_ospi_img_hs
sbl_ospi_img_hs_RELPATH = ti/boot/sbl/board/k3
sbl_ospi_img_hs_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)_hs/ospi/bin
-sbl_ospi_img_hs_PATH = $(PDK_SBL_COMP_PATH)/board/k3
-export sbl_ospi_img_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=ospi SBL_USE_DMA=no BUILD_HS=yes
+#Note: The below variable is purposefully set to build folder - different than
+#non-hs app.
+#The APPNAME or app -C directory (_PATH variable) should be unique as the complier
+#creates lto_$APPNAME optimization file in the directory in which -C is called
+#Because of this multiple lto_ files with same name can be created if app name
+#and app path are same
+sbl_ospi_img_hs_PATH = $(PDK_SBL_COMP_PATH)/build
+export sbl_ospi_img_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=ospi SBL_USE_DMA=yes BUILD_HS=yes
export sbl_ospi_img_hs_SBL_CERT_KEY=$(SBL_CERT_KEY_HS)
export sbl_ospi_img_hs_BOARD_DEPENDENCY = yes
export sbl_ospi_img_hs_SOC_DEPENDENCY = yes
export sbl_ospi_img_hs_$(SOC)_CORELIST = mcu1_0
export sbl_ospi_img_hs_SBL_IMAGEGEN = yes
+# SBL OSPI "HLOS Boot" Image - For HS build
+export sbl_ospi_img_hlos_hs_COMP_LIST = sbl_ospi_img_hlos_hs
+sbl_ospi_img_hlos_hs_RELPATH = ti/boot/sbl/board/k3
+sbl_ospi_img_hlos_hs_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)_hs/ospi/bin
+#Note: The below variable is purposefully set to build folder - different than
+#non-hs app.
+#The APPNAME or app -C directory (_PATH variable) should be unique as the complier
+#creates lto_$APPNAME optimization file in the directory in which -C is called
+#Because of this multiple lto_ files with same name can be created if app name
+#and app path are same
+sbl_ospi_img_hlos_hs_PATH = $(PDK_SBL_COMP_PATH)/build
+export sbl_ospi_img_hlos_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=ospi HLOS_BOOT=yes SBL_USE_DMA=yes BUILD_HS=yes
+export sbl_ospi_img_hlos_hs_SBL_CERT_KEY=$(SBL_CERT_KEY_HS)
+export sbl_ospi_img_hlos_hs_BOARD_DEPENDENCY = yes
+export sbl_ospi_img_hlos_hs_SOC_DEPENDENCY = yes
+export sbl_ospi_img_hlos_hs_CORE_DEPENDENCY = no
+sbl_ospi_img_hlos_hs_PKG_LIST = sbl
+sbl_ospi_img_hlos_hs_INCLUDE = $(sbl_ospi_img_hlos_hs_PATH)
+export sbl_ospi_img_hlos_hs_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_ospi_img_hlos_hs_$(SOC)_CORELIST = mcu1_0
+export sbl_ospi_img_hlos_hs_SBL_IMAGEGEN = yes
+
# SBL HYPERFLASH Image
sbl_hyperflash_img_COMP_LIST = sbl_hyperflash_img
sbl_hyperflash_img_RELPATH = ti/boot/sbl/board/k3
sbl_hyperflash_img_SBL_IMAGEGEN = yes
export sbl_hyperflash_img_SBL_IMAGEGEN
+# SBL HYPERFLASH "HLOS Boot" Image
+sbl_hyperflash_img_hlos_COMP_LIST = sbl_hyperflash_img_hlos
+sbl_hyperflash_img_hlos_RELPATH = ti/boot/sbl/board/k3
+sbl_hyperflash_img_hlos_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)/hyperflash/bin
+sbl_hyperflash_img_hlos_PATH = $(PDK_SBL_COMP_PATH)/board/k3
+sbl_hyperflash_img_hlos_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=hyperflash HLOS_BOOT=yes SBL_USE_DMA=yes BUILD_HS=no
+export sbl_hyperflash_img_hlos_SBL_CERT_KEY=$(SBL_CERT_KEY)
+export sbl_hyperflash_img_hlos_MAKEFILE
+sbl_hyperflash_img_hlos_BOARD_DEPENDENCY = yes
+sbl_hyperflash_img_hlos_SOC_DEPENDENCY = yes
+sbl_hyperflash_img_hlos_CORE_DEPENDENCY = no
+export sbl_hyperflash_img_hlos_COMP_LIST
+export sbl_hyperflash_img_hlos_BOARD_DEPENDENCY
+export sbl_hyperflash_img_hlos_SOC_DEPENDENCY
+export sbl_hyperflash_img_hlos_CORE_DEPENDENCY
+sbl_hyperflash_img_hlos_PKG_LIST = sbl
+sbl_hyperflash_img_hlos_INCLUDE = $(sbl_hyperflash_img_hlos_PATH)
+sbl_hyperflash_img_hlos_BOARDLIST = j721e_evm
+export sbl_hyperflash_img_hlos_BOARDLIST
+sbl_hyperflash_img_hlos_$(SOC)_CORELIST = mcu1_0
+export sbl_hyperflash_img_hlos_$(SOC)_CORELIST
+sbl_hyperflash_img_hlos_SBL_IMAGEGEN = yes
+export sbl_hyperflash_img_hlos_SBL_IMAGEGEN
+
# SBL HYPERFLASH Image - For HS build
export sbl_hyperflash_img_hs_COMP_LIST = sbl_hyperflash_img_hs
sbl_hyperflash_img_hs_RELPATH = ti/boot/sbl/board/k3
sbl_hyperflash_img_hs_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)_hs/hyperflash/bin
-sbl_hyperflash_img_hs_PATH = $(PDK_SBL_COMP_PATH)/board/k3
+#Note: The below variable is purposefully set to build folder - different than
+#non-hs app.
+#The APPNAME or app -C directory (_PATH variable) should be unique as the complier
+#creates lto_$APPNAME optimization file in the directory in which -C is called
+#Because of this multiple lto_ files with same name can be created if app name
+#and app path are same
+sbl_hyperflash_img_hs_PATH = $(PDK_SBL_COMP_PATH)/build
export sbl_hyperflash_img_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=hyperflash SBL_USE_DMA=yes BUILD_HS=yes
export sbl_hyperflash_img_hs_SBL_CERT_KEY=$(SBL_CERT_KEY_HS)
export sbl_hyperflash_img_hs_BOARD_DEPENDENCY = yes
export sbl_hyperflash_img_hs_$(SOC)_CORELIST = mcu1_0
export sbl_hyperflash_img_hs_SBL_IMAGEGEN = yes
+# SBL HYPERFLASH "HLOS Boot" Image - For HS build
+export sbl_hyperflash_img_hlos_hs_COMP_LIST = sbl_hyperflash_img_hlos_hs
+sbl_hyperflash_img_hlos_hs_RELPATH = ti/boot/sbl/board/k3
+sbl_hyperflash_img_hlos_hs_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)_hs/hyperflash/bin
+#Note: The below variable is purposefully set to build folder - different than
+#non-hs app.
+#The APPNAME or app -C directory (_PATH variable) should be unique as the complier
+#creates lto_$APPNAME optimization file in the directory in which -C is called
+#Because of this multiple lto_ files with same name can be created if app name
+#and app path are same
+sbl_hyperflash_img_hlos_hs_PATH = $(PDK_SBL_COMP_PATH)/build
+export sbl_hyperflash_img_hlos_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=hyperflash HLOS_BOOT=yes SBL_USE_DMA=yes BUILD_HS=yes
+export sbl_hyperflash_img_hlos_hs_SBL_CERT_KEY=$(SBL_CERT_KEY_HS)
+export sbl_hyperflash_img_hlos_hs_BOARD_DEPENDENCY = yes
+export sbl_hyperflash_img_hlos_SOC_DEPENDENCY = yes
+export sbl_hyperflash_img_hlos_hs_CORE_DEPENDENCY = no
+sbl_hyperflash_img_hlos_hs_PKG_LIST = sbl
+sbl_hyperflash_img_hlos_hs_INCLUDE = $(sbl_hyperflash_img_hlos_hs_PATH)
+export sbl_hyperflash_img_hlos_hs_BOARDLIST = j721e_evm
+export sbl_hyperflash_img_hlos_hs_$(SOC)_CORELIST = mcu1_0
+export sbl_hyperflash_img_hlos_hs_SBL_IMAGEGEN = yes
+
# SBL UART Image
sbl_uart_img_COMP_LIST = sbl_uart_img
+ifeq ($(SOC), tpr12)
+sbl_uart_img_RELPATH = ti/boot/sbl/board/evmTPR12
+else
sbl_uart_img_RELPATH = ti/boot/sbl/board/k3
+endif
sbl_uart_img_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)/uart/bin
-sbl_uart_img_OBJPATH = $(DEST_ROOT)/sbl_uart_img/obj
+ifeq ($(SOC), tpr12)
+sbl_uart_img_PATH = $(PDK_SBL_COMP_PATH)/board/evmTPR12
+else
sbl_uart_img_PATH = $(PDK_SBL_COMP_PATH)/board/k3
+endif
sbl_uart_img_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=uart SBL_USE_DMA=yes BUILD_HS=no
export sbl_uart_img_MAKEFILE
export sbl_uart_img_SBL_CERT_KEY=$(SBL_CERT_KEY)
sbl_uart_img_SBL_IMAGEGEN = yes
export sbl_uart_img_SBL_IMAGEGEN
-# SBL HYPERFLASH Image - For HS build
+# SBL UART Image - For HS build
export sbl_uart_img_hs_COMP_LIST = sbl_uart_img_hs
sbl_uart_img_hs_RELPATH = ti/boot/sbl/board/k3
sbl_uart_img_hs_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)_hs/uart/bin
-sbl_uart_img_hs_PATH = $(PDK_SBL_COMP_PATH)/board/k3
+#Note: The below variable is purposefully set to build folder - different than
+#non-hs app.
+#The APPNAME or app -C directory (_PATH variable) should be unique as the complier
+#creates lto_$APPNAME optimization file in the directory in which -C is called
+#Because of this multiple lto_ files with same name can be created if app name
+#and app path are same
+sbl_uart_img_hs_PATH = $(PDK_SBL_COMP_PATH)/build
export sbl_uart_img_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=uart SBL_USE_DMA=yes BUILD_HS=yes
export sbl_uart_img_hs_SBL_CERT_KEY=$(SBL_CERT_KEY_HS)
export sbl_uart_img_hs_BOARD_DEPENDENCY = yes
export sbl_uart_img_hs_$(SOC)_CORELIST = mcu1_0
export sbl_uart_img_hs_SBL_IMAGEGEN = yes
+# SBL QSPI Image
+ifeq ($(SOC), tpr12)
+sbl_qspi_img_COMP_LIST = sbl_qspi_img
+sbl_qspi_img_RELPATH = ti/boot/sbl/board/tpr12
+sbl_qspi_img_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)/qspi/bin
+sbl_qspi_img_PATH = $(PDK_SBL_COMP_PATH)/board/evmTPR12
+sbl_qspi_img_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk BOOTMODE=qspi SBL_USE_DMA=yes BUILD_HS=no
+export sbl_qspi_img_MAKEFILE
+export sbl_qspi_img_SBL_CERT_KEY=$(SBL_CERT_KEY)
+sbl_qspi_img_BOARD_DEPENDENCY = yes
+sbl_qspi_img_SOC_DEPENDENCY = yes
+sbl_qspi_img_CORE_DEPENDENCY = no
+export sbl_qspi_img_COMP_LIST
+export sbl_qspi_img_BOARD_DEPENDENCY
+export sbl_qspi_img_SOC_DEPENDENCY
+export sbl_qspi_img_CORE_DEPENDENCY
+sbl_qspi_img_PKG_LIST = sbl
+sbl_qspi_img_INCLUDE = $(sbl_qspi_img_PATH)
+sbl_qspi_img_BOARDLIST = tpr12_evm tpr12_qt
+export sbl_qspi_img_BOARDLIST
+sbl_qspi_img_$(SOC)_CORELIST = mcu1_0
+export sbl_qspi_img_$(SOC)_CORELIST
+sbl_qspi_img_SBL_IMAGEGEN = yes
+export sbl_qspi_img_SBL_IMAGEGEN
+endif
+
+# Individual Core Boot Test (Ordered)
+sbl_boot_test_ordered_COMP_LIST = sbl_boot_test_ordered
+sbl_boot_test_ordered_RELPATH = ti/boot/sbl/example/k3MulticoreApp
+sbl_boot_test_ordered_BINPATH = $(PDK_SBL_COMP_PATH)/example/k3MulticoreApp/binary
+sbl_boot_test_ordered_PATH = $(PDK_SBL_COMP_PATH)/example/k3MulticoreApp
+sbl_boot_test_ordered_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_boot_test_ordered.mk
+export sbl_boot_test_ordered_MAKEFILE
+sbl_boot_test_ordered_BOARD_DEPENDENCY = no
+sbl_boot_test_ordered_SOC_DEPENDENCY = no
+sbl_boot_test_ordered_CORE_DEPENDENCY = no
+export sbl_boot_test_ordered_COMP_LIST
+export sbl_boot_test_ordered_BOARD_DEPENDENCY
+export sbl_boot_test_ordered_SOC_DEPENDENCY
+export sbl_boot_test_ordered_CORE_DEPENDENCY
+sbl_boot_test_ordered_PKG_LIST = sbl_boot_test_ordered
+sbl_boot_test_ordered_INCLUDE = $(sbl_boot_test_ordered_PATH)
+sbl_boot_test_ordered_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_boot_test_ordered_BOARDLIST
+sbl_boot_test_ordered_$(SOC)_CORELIST = $(sbl_$(SOC)_CORELIST)
+export sbl_boot_test_ordered_$(SOC)_CORELIST
+ifneq ($(SOC), tpr12)
+sbl_EXAMPLE_LIST += sbl_boot_test_ordered
+endif
+sbl_boot_test_ordered_SBL_APPIMAGEGEN = yes
+export sbl_boot_test_ordered_SBL_APPIMAGEGEN
+
+# Multicore AMP Boot Test (Ordered)
+sbl_multicore_amp_ordered_COMP_LIST = sbl_multicore_amp_ordered
+sbl_multicore_amp_ordered_RELPATH = ti/boot/sbl/example/k3MulticoreApp
+sbl_multicore_amp_ordered_BINPATH = $(PDK_SBL_COMP_PATH)/example/k3MulticoreApp/binary
+sbl_multicore_amp_ordered_PATH = $(PDK_SBL_COMP_PATH)/example/k3MulticoreApp
+sbl_multicore_amp_ordered_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_multicore_amp_ordered.mk
+export sbl_multicore_amp_ordered_MAKEFILE
+# SBL multicore amp depends on sbl_boot_test for all the cores
+sbl_multicore_amp_ordered_DEPENDS_ON=sbl_boot_test_ordered
+export sbl_multicore_amp_ordered_DEPENDS_ON
+sbl_multicore_amp_ordered_BOARD_DEPENDENCY = no
+sbl_multicore_amp_ordered_SOC_DEPENDENCY = no
+sbl_multicore_amp_ordered_CORE_DEPENDENCY = no
+export sbl_multicore_amp_ordered_COMP_LIST
+export sbl_multicore_amp_ordered_BOARD_DEPENDENCY
+export sbl_multicore_amp_ordered_SOC_DEPENDENCY
+export sbl_multicore_amp_ordered_CORE_DEPENDENCY
+sbl_multicore_amp_ordered_PKG_LIST = sbl_multicore_amp_ordered
+sbl_multicore_amp_ordered_INCLUDE = $(sbl_multicore_amp_ordered_PATH)
+sbl_multicore_amp_ordered_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_multicore_amp_ordered_BOARDLIST
+sbl_multicore_amp_ordered_$(SOC)_CORELIST = $($(SOC)_LASTCORE)
+export sbl_multicore_amp_ordered_$(SOC)_CORELIST
+ifneq ($(SOC), tpr12)
+sbl_EXAMPLE_LIST += sbl_multicore_amp_ordered
+endif
+sbl_multicore_amp_ordered_SBL_APPIMAGEGEN = no
+export sbl_multicore_amp_ordered_SBL_APPIMAGEGEN
+
+# Individual Core Boot Test (Short)
+sbl_boot_test_short_COMP_LIST = sbl_boot_test_short
+sbl_boot_test_short_RELPATH = ti/boot/sbl/example/k3MulticoreApp
+sbl_boot_test_short_BINPATH = $(PDK_SBL_COMP_PATH)/example/k3MulticoreApp/binary
+sbl_boot_test_short_PATH = $(PDK_SBL_COMP_PATH)/example/k3MulticoreApp
+sbl_boot_test_short_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_boot_test_short.mk
+export sbl_boot_test_short_MAKEFILE
+sbl_boot_test_short_BOARD_DEPENDENCY = no
+sbl_boot_test_short_SOC_DEPENDENCY = no
+sbl_boot_test_short_CORE_DEPENDENCY = no
+export sbl_boot_test_short_COMP_LIST
+export sbl_boot_test_short_BOARD_DEPENDENCY
+export sbl_boot_test_short_SOC_DEPENDENCY
+export sbl_boot_test_short_CORE_DEPENDENCY
+sbl_boot_test_short_PKG_LIST = sbl_boot_test_short
+sbl_boot_test_short_INCLUDE = $(sbl_boot_test_short_PATH)
+sbl_boot_test_short_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_boot_test_short_BOARDLIST
+sbl_boot_test_short_$(SOC)_CORELIST = $(sbl_$(SOC)_CORELIST)
+export sbl_boot_test_short_$(SOC)_CORELIST
+ifneq ($(SOC), tpr12)
+sbl_EXAMPLE_LIST += sbl_boot_test_short
+endif
+sbl_boot_test_short_SBL_APPIMAGEGEN = yes
+export sbl_boot_test_short_SBL_APPIMAGEGEN
+
+# Multicore AMP Boot Test (Short)
+sbl_multicore_amp_short_COMP_LIST = sbl_multicore_amp_short
+sbl_multicore_amp_short_RELPATH = ti/boot/sbl/example/k3MulticoreApp
+sbl_multicore_amp_short_BINPATH = $(PDK_SBL_COMP_PATH)/example/k3MulticoreApp/binary
+sbl_multicore_amp_short_PATH = $(PDK_SBL_COMP_PATH)/example/k3MulticoreApp
+sbl_multicore_amp_short_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_multicore_amp_short.mk
+export sbl_multicore_amp_short_MAKEFILE
+# SBL multicore amp depends on sbl_boot_test for all the cores
+sbl_multicore_amp_short_DEPENDS_ON=sbl_boot_test_short
+export sbl_multicore_amp_short_DEPENDS_ON
+sbl_multicore_amp_short_BOARD_DEPENDENCY = no
+sbl_multicore_amp_short_SOC_DEPENDENCY = no
+sbl_multicore_amp_short_CORE_DEPENDENCY = no
+export sbl_multicore_amp_short_COMP_LIST
+export sbl_multicore_amp_short_BOARD_DEPENDENCY
+export sbl_multicore_amp_short_SOC_DEPENDENCY
+export sbl_multicore_amp_short_CORE_DEPENDENCY
+sbl_multicore_amp_short_PKG_LIST = sbl_multicore_amp_short
+sbl_multicore_amp_short_INCLUDE = $(sbl_multicore_amp_short_PATH)
+sbl_multicore_amp_short_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_multicore_amp_short_BOARDLIST
+sbl_multicore_amp_short_$(SOC)_CORELIST = $($(SOC)_LASTCORE)
+export sbl_multicore_amp_short_$(SOC)_CORELIST
+ifneq ($(SOC), tpr12)
+sbl_EXAMPLE_LIST += sbl_multicore_amp_short
+endif
+sbl_multicore_amp_short_SBL_APPIMAGEGEN = no
+export sbl_multicore_amp_short_SBL_APPIMAGEGEN
+
# Individual Core Boot Test
sbl_boot_test_COMP_LIST = sbl_boot_test
sbl_boot_test_RELPATH = ti/boot/sbl/example/k3MulticoreApp
export sbl_boot_test_BOARDLIST
sbl_boot_test_$(SOC)_CORELIST = $(sbl_$(SOC)_CORELIST)
export sbl_boot_test_$(SOC)_CORELIST
+ifneq ($(SOC), tpr12)
sbl_EXAMPLE_LIST += sbl_boot_test
+endif
sbl_boot_test_SBL_APPIMAGEGEN = yes
export sbl_boot_test_SBL_APPIMAGEGEN
export sbl_multicore_amp_BOARDLIST
sbl_multicore_amp_$(SOC)_CORELIST = $($(SOC)_LASTCORE)
export sbl_multicore_amp_$(SOC)_CORELIST
+ifneq ($(SOC), tpr12)
sbl_EXAMPLE_LIST += sbl_multicore_amp
+endif
sbl_multicore_amp_SBL_APPIMAGEGEN = no
export sbl_multicore_amp_SBL_APPIMAGEGEN
export sbl_smp_test_BOARDLIST
sbl_smp_test_$(SOC)_CORELIST = $($(SOC)_smp_CORELIST)
export sbl_smp_test_$(SOC)_CORELIST
-ifneq ($(SOC), am64x)
+ifneq ($(SOC),$(filter $(SOC), am64x tpr12))
sbl_EXAMPLE_LIST += sbl_smp_test
endif
sbl_smp_test_SBL_APPIMAGEGEN = yes
export sbl_multicore_smp_BOARDLIST
sbl_multicore_smp_$(SOC)_CORELIST := $($(SOC)_LASTCORE)
export sbl_multicore_smp_$(SOC)_CORELIST
-ifneq ($(SOC), am64x)
+ifneq ($(SOC),$(filter $(SOC), am64x tpr12))
sbl_EXAMPLE_LIST += sbl_multicore_smp
endif
sbl_multicore_smp_SBL_APPIMAGEGEN = no
export sbl_boot_xip_test_BOARDLIST
sbl_boot_xip_test_$(SOC)_CORELIST = mcu1_0
export sbl_boot_xip_test_$(SOC)_CORELIST
-ifneq ($(SOC), am64x)
+ifneq ($(SOC),$(filter $(SOC), tpr12))
sbl_EXAMPLE_LIST += sbl_boot_xip_test
endif
sbl_boot_xip_test_SBL_APPIMAGEGEN = yes
export sbl_boot_xip_entry_BOARDLIST
sbl_boot_xip_entry_$(SOC)_CORELIST = mcu1_0
export sbl_boot_xip_entry_$(SOC)_CORELIST
-ifneq ($(SOC), am64x)
+ifneq ($(SOC),$(filter $(SOC), tpr12))
sbl_EXAMPLE_LIST += sbl_boot_xip_entry
endif
sbl_boot_xip_entry_SBL_APPIMAGEGEN = yes
# debugging and tuning performace knobs
#SBL_CFLAGS += -DSBL_DISPLAY_PROFILE_INFO
-ifeq ($(SOC), am64x)
-SBL_CFLAGS += -DSBL_BYPASS_OSPI_DRIVER -DDISABLE_ATCM
-endif
-
###### Use boot_perf_benchmark example#######
###### to fine tune the perf knobs #########
###########START BOOT PERF KNOBS#############
# SBL log level
# no logs = 0, only errors =1, normal logs = 2, all logs = 3
+
+ifeq ($(SOC), tpr12)
+SBL_CFLAGS += -DSBL_LOG_LEVEL=0
+else
SBL_CFLAGS += -DSBL_LOG_LEVEL=2
+endif
SBL_CFLAGS += -DSBL_ENABLE_PLL
SBL_CFLAGS += -DSBL_ENABLE_CLOCKS
-
-ifneq ($(SOC), am64x)
SBL_CFLAGS += -DSBL_ENABLE_DDR
-endif
+
############################################
# DISABLING the options above this caption
# improves boot time at the cost of moving
# usecase demands it.
#SBL_CFLAGS += -DSBL_ENABLE_DEV_GRP_MCU
+# If enabled, SBL will use alternate
+# config steps to directly boot an HLOS,
+# including an alternate set of Sciclient
+# RM board cfg settings.
+# NOTE: Currently supported only for J721E, J7200
+#SBL_CFLAGS += -DSBL_ENABLE_HLOS_BOOT
+
# If enabled, SBL will not leave the OSPI
# flash in XIP mode, so that the MAIN
# domain Cortex-A code (HLOS) can reset
# enable MCU-only code to run.
#SBL_CFLAGS += -DSBL_USE_MCU_DOMAIN_ONLY
-# If enabled, the SBL will skip configuring ATCM memory
-#SBL_CFLAGS += -DDISABLE_ATCM
-
# If enabled for OSPI boot the SBL will bypass the
# OSPI driver completely and let ROM copy the sysftw/application
# from flash.
#SBL_CFLAGS += -DSBL_BYPASS_OSPI_DRIVER
+# If enabled for OSPI boot the SBL will bypass the
+# OSPI driver for system firmware download and use the OSPI driver for
+# downloading application from the flash
+#SBL_CFLAGS += -DSBL_BYPASS_OSPI_DRIVER_FOR_SYSFW_DOWNLOAD
+
# If enabled the SBL image is built for running on VLAB simulation.
#SBL_CFLAGS += -DVLAB_SIM
# Example - Building Custom SBL Images
# Build and SBl with custom flags to change
# different build configurations
-CUST_SBL_TEST_SOCS = am65xx j721e am64x_evm
-CUST_SBL_TEST_BOARDS = am65xx_evm j721e_evm am64x_evm
+CUST_SBL_TEST_SOCS = am65xx j721e j7200 am64x_evm
+CUST_SBL_TEST_BOARDS = am65xx_evm j721e_evm j7200_evm am64x_evm
#CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=1 -DSBL_LOG_LEVEL=0 -DSBL_SCRATCH_MEM_START=0x70100000 -DSBL_SCRATCH_MEM_SIZE=0xF0000 -DSBL_SKIP_MCU_RESET -DBOOT_OSPI "
#CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=1 -DSBL_LOG_LEVEL=0 -DSBL_SCRATCH_MEM_START=0x70100000 -DSBL_SKIP_MCU_RESET -DSBL_SKIP_BRD_CFG_PM -DBOOT_OSPI "
#CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=0 -DSBL_SCRATCH_MEM_START=0x70100000 -DSBL_SCRATCH_MEM_SIZE=0xF0000 -DSBL_SKIP_SYSFW_INIT -DSBL_SKIP_MCU_RESET -DBOOT_OSPI"
#CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=1 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0xB8000000 -DSBL_SCRATCH_MEM_SIZE=0x4000000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_ENABLE_DDR -DSBL_SKIP_MCU_RESET -DBOOT_OSPI"
-ifeq ($(findstring j7,$(SOC)),j7)
-CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0x41cc0000 -DSBL_SCRATCH_MEM_SIZE=0x40000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_SKIP_MCU_RESET -DBOOT_OSPI -DSBL_ENABLE_DEV_GRP_MCU -DSBL_HLOS_OWNS_FLASH"
-# Custom example: Early CAN response (NOTE: before using the line below, comment out the line above)
-#CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0x41cc0000 -DSBL_SCRATCH_MEM_SIZE=0x40000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_SKIP_MCU_RESET -DBOOT_OSPI -DSBL_ENABLE_DEV_GRP_MCU -DSBL_HLOS_OWNS_FLASH -DSBL_SKIP_PINMUX_ENABLE -DSBL_SKIP_LATE_INIT -DSBL_USE_MCU_DOMAIN_ONLY"
+ifeq ($(SOC), j7200)
+# NOTE: If changing to SBL_USE_DMA=1, below, then also change 'sbl_lib_cust' & 'sbl_cust_img' MAKEFILE lines further below to use 'SBL_USE_DMA=yes'
+CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0xB8000000 -DSBL_SCRATCH_MEM_SIZE=0x4000000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_ENABLE_DDR -DSBL_SKIP_MCU_RESET -DBOOT_OSPI"
else
-CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0x70100000 -DSBL_SCRATCH_MEM_SIZE=0xF0000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_SKIP_MCU_RESET -DBOOT_OSPI -DSBL_ENABLE_DEV_GRP_MCU -DSBL_HLOS_OWNS_FLASH"
-endif
+ ifeq ($(findstring j7,$(SOC)),j7)
+# NOTE: If changing to SBL_USE_DMA=1, below, then also change 'sbl_lib_cust' & 'sbl_cust_img' MAKEFILE lines further below to use 'SBL_USE_DMA=yes'
+CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0xB8000000 -DSBL_SCRATCH_MEM_SIZE=0x4000000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_ENABLE_DDR -DSBL_SKIP_MCU_RESET -DBOOT_OSPI"
+# Custom ex: Early CAN response (NOTE: before using line below, comment out the line above)
+#CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0x41cc0000 -DSBL_SCRATCH_MEM_SIZE=0x40000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_SKIP_MCU_RESET -DBOOT_OSPI -DSBL_ENABLE_DEV_GRP_MCU -DSBL_HLOS_OWNS_FLASH -DSBL_SKIP_PINMUX_ENABLE -DSBL_SKIP_LATE_INIT -DSBL_USE_MCU_DOMAIN_ONLY"
+ else
+CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=1 -DSBL_SCRATCH_MEM_START=0x70100000 -DSBL_SCRATCH_MEM_SIZE=0xF0000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DSBL_SKIP_MCU_RESET -DBOOT_OSPI"
+ endif
#Custom configuration for AM64x OSPI Boot
-#CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=3 -DSBL_SCRATCH_MEM_START=0x70100000 -DSBL_SCRATCH_MEM_SIZE=0xF0000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DBOOT_OSPI -DSBL_ENABLE_DDR -DDISABLE_ATCM -DSBL_BYPASS_OSPI_DRIVER"
+#CUST_SBL_TEST_FLAGS =" -DSBL_USE_DMA=0 -DSBL_LOG_LEVEL=3 -DSBL_SCRATCH_MEM_START=0x70100000 -DSBL_SCRATCH_MEM_SIZE=0xF0000 -DSBL_ENABLE_PLL -DSBL_ENABLE_CLOCKS -DBOOT_OSPI -DSBL_ENABLE_DDR -DSBL_BYPASS_OSPI_DRIVER"
+endif
# SBL Custom LIB
sbl_lib_cust_COMP_LIST = sbl_lib_cust
sbl_lib_cust_RELPATH = ti/boot/sbl
-export sbl_lib_cust_OBJPATH = $(DEST_ROOT)/sbl_lib_cust/obj
+export sbl_lib_cust_OBJPATH = ti/boot/sbl/cust
sbl_lib_cust_LIBNAME = sbl_lib_cust
sbl_lib_cust_PATH = $(PDK_SBL_COMP_PATH)
sbl_lib_cust_LIBNAME = sbl_lib_cust
export sbl_cust_img_BOARDLIST
sbl_cust_img_$(SOC)_CORELIST = mcu1_0
export sbl_cust_img_$(SOC)_CORELIST
-ifneq ($(SOC), am64x)
+ifneq ($(SOC),$(filter $(SOC), am64x tpr12))
sbl_EXAMPLE_LIST += sbl_cust_img
endif
sbl_cust_img_SBL_IMAGEGEN = yes
export sbl_cust_img_hs_COMP_LIST = sbl_cust_img_hs
sbl_cust_img_hs_RELPATH = ti/boot/sbl/board/k3
sbl_cust_img_hs_CUSTOM_BINPATH = $(PDK_SBL_COMP_PATH)/binary/$(BOARD)_hs/cust/bin
-sbl_cust_img_hs_PATH = $(PDK_SBL_COMP_PATH)/board/k3
+#Note: The below variable is purposefully set to build folder - different than
+#non-hs app.
+#The APPNAME or app -C directory (_PATH variable) should be unique as the complier
+#creates lto_$APPNAME optimization file in the directory in which -C is called
+#Because of this multiple lto_ files with same name can be created if app name
+#and app path are same
+sbl_cust_img_hs_PATH = $(PDK_SBL_COMP_PATH)/build
export sbl_cust_img_hs_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_img.mk CUST_SBL_FLAGS=$(CUST_SBL_TEST_FLAGS) BOOTMODE=cust SBL_USE_DMA=no BUILD_HS=yes
export sbl_cust_img_hs_SBL_CERT_KEY=$(SBL_CERT_KEY_HS)
export sbl_cust_img_hs_BOARD_DEPENDENCY = yes
export sbl_cust_img_hs_BOARDLIST = $(CUST_SBL_TEST_BOARDS)
export sbl_cust_img_hs_$(SOC)_CORELIST = mcu1_0
export sbl_cust_img_hs_SBL_IMAGEGEN = yes
-ifneq ($(SOC), am64x)
+ifneq ($(SOC),$(filter $(SOC), am64x j7200 tpr12))
sbl_EXAMPLE_LIST += sbl_cust_img_hs
endif
export sbl_boot_perf_test_BOARDLIST
sbl_boot_perf_test_$(SOC)_CORELIST = mcu1_0
export sbl_boot_perf_test_$(SOC)_CORELIST
-ifneq ($(SOC), am64x)
+ifneq ($(SOC),$(filter $(SOC), am64x tpr12))
sbl_EXAMPLE_LIST += sbl_boot_perf_test
endif
sbl_boot_perf_test_SBL_APPIMAGEGEN = yes
export sbl_boot_perf_test_SBL_APPIMAGEGEN
+# TPR12 QT Test Bench image
+ifeq ($(SOC), tpr12)
+sbl_r4tb_COMP_LIST = sbl_r4tb
+sbl_r4tb_RELPATH = ti/boot/sbl/example/tpr12MulticoreApp/r4_tb
+sbl_r4tb_BINPATH = $(PDK_SBL_COMP_PATH)/example/tpr12MulticoreApp/r4_tb/obj
+sbl_r4tb_PATH = $(PDK_SBL_COMP_PATH)/example/tpr12MulticoreApp/r4_tb
+sbl_r4tb_MAKEFILE = -f$(sbl_r4tb_PATH)/makefile all R4_TB_PATH:=${sbl_r4tb_PATH} R4_CODEGEN_INSTALL_PATH:=${TOOLCHAIN_PATH_R5}
+export sbl_r4tb_MAKEFILE
+sbl_r4tb_BOARD_DEPENDENCY = no
+sbl_r4tb_SOC_DEPENDENCY = no
+sbl_r4tb_CORE_DEPENDENCY = no
+export sbl_r4tb_COMP_LIST
+export sbl_r4tb_BOARD_DEPENDENCY
+export sbl_r4tb_SOC_DEPENDENCY
+export sbl_r4tb_CORE_DEPENDENCY
+sbl_r4tb_PKG_LIST = sbl_r4tb
+sbl_r4tb_INCLUDE = $(sbl_r4tb_PATH)
+sbl_r4tb_BOARDLIST = tpr12_evm tpr12_qt
+export sbl_r4tb_BOARDLIST
+sbl_r4tb_$(SOC)_CORELIST = $(sbl_$(SOC)_CORELIST)
+export sbl_r4tb_$(SOC)_CORELIST
+sbl_r4tb_SBL_APPIMAGEGEN = no
+export sbl_r4tb_SBL_APPIMAGEGEN
+endif
+
+ifeq ($(SOC), tpr12)
+# R5 Lockstep and DSP Boot Test
+sbl_tpr12_test_COMP_LIST = sbl_tpr12_test
+sbl_tpr12_test_RELPATH = ti/boot/sbl/example/tpr12MulticoreApp
+sbl_tpr12_test_BINPATH = $(PDK_SBL_COMP_PATH)/example/tpr12MulticoreApp/binary
+sbl_tpr12_test_PATH = $(PDK_SBL_COMP_PATH)/example/tpr12MulticoreApp
+sbl_tpr12_test_MAKEFILE = -f$(PDK_SBL_COMP_PATH)/build/sbl_tpr12_test.mk BOOTMODE=uart
+export sbl_tpr12_test_MAKEFILE
+sbl_tpr12_test_BOARD_DEPENDENCY = no
+sbl_tpr12_test_SOC_DEPENDENCY = no
+sbl_tpr12_test_CORE_DEPENDENCY = no
+export sbl_tpr12_test_COMP_LIST
+export sbl_tpr12_test_BOARD_DEPENDENCY
+export sbl_tpr12_test_SOC_DEPENDENCY
+export sbl_tpr12_test_CORE_DEPENDENCY
+sbl_tpr12_test_PKG_LIST = sbl_tpr12_test
+sbl_tpr12_test_INCLUDE = $(sbl_tpr12_test_PATH)
+sbl_tpr12_test_BOARDLIST = $(sbl_BOARDLIST)
+export sbl_tpr12_test_BOARDLIST
+sbl_tpr12_test_$(SOC)_CORELIST = $(sbl_tpr12_CORELIST)
+export sbl_tpr12_test_$(SOC)_CORELIST
+sbl_EXAMPLE_LIST += sbl_tpr12_test
+sbl_tpr12_test_SBL_APPIMAGEGEN = no
+export sbl_tpr12_test_SBL_APPIMAGEGEN
+endif
+
# SBL not supported for any profile
# other than release
ifneq ($(BUILD_PROFILE), release)
+ifneq ($(SOC), tpr12)
sbl_LIB_LIST =
sbl_EXAMPLE_LIST =
SBL_CFLAGS =
+endif # TPR12 Debug SBL build support
endif # ifneq ($(BUILD_PROFILE), release)
export sbl_LIB_LIST