Merge "build_system: add scripts of sign tool [1/1]" into projects/amlogic-dev
diff --git a/Makefile b/Makefile
index bfe56d5..151c14b 100644
--- a/Makefile
+++ b/Makefile
@@ -292,6 +292,11 @@
 		./update_fw.sh;) \
 	fi
 
+.PHONY: scatter
+scatter:
+	@make && \
+	make -f $(build_DIR)/scatter_load.mk scatter
+
 ifeq ($(BACKTRACE_ENABLE),1)
 .PHONY: backtrace
 backtrace:
diff --git a/cmake/root.cmake b/cmake/root.cmake
index ced5362..027cd63 100755
--- a/cmake/root.cmake
+++ b/cmake/root.cmake
@@ -99,7 +99,7 @@
         -mlsp="${BOARD_DIR}/lsp_dsp/"
 )
 elseif(CONFIG_ARM64 OR CONFIG_ARM)
-    add_custom_command(TARGET ${TARGET_NAME} PRE_BUILD COMMAND ${COMPILER_CC} -I ${BOARD_DIR} -I ${ARCH_DIR} -DCONFIG_EXCEPTION_SVC=1 -E -xc -P ${SDK_BASE}/boards/${ARCH}/lscript > ${BOARD_DIR}/lscript.ld)
+    add_custom_command(TARGET ${TARGET_NAME} PRE_BUILD COMMAND ${COMPILER_CC} -I ${BOARD_DIR} -DCONFIG_EXCEPTION_SVC=1 -E -xc -P ${SDK_BASE}/boards/${ARCH}/lscript > ${BOARD_DIR}/lscript.ld)
     target_link_libraries(
         ${TARGET_NAME}
         -Wl,--start-group
diff --git a/scatter_load.mk b/scatter_load.mk
new file mode 100644
index 0000000..d984a01
--- /dev/null
+++ b/scatter_load.mk
@@ -0,0 +1,17 @@
+#Object files and dependency definitions
+BL2_2 = $(kernel_BUILD_DIR)/bl2.bin
+RTOS_ELF = $(kernel_BUILD_DIR)/${KERNEL}.elf
+RTOS_LOAD_A = $(kernel_BUILD_DIR)/rtos_1.bin
+RTOS_LOAD_B = $(kernel_BUILD_DIR)/rtos_2.bin
+
+#toolchain
+OBJCOPY:=$(TOOLCHAIN_KEYWORD)-objcopy
+
+#Specify link segment
+late_load_list+=.late.data .late.rodata .late.text
+
+.PHONY: scatter
+scatter:
+	@${OBJCOPY} -O binary $(addprefix -R ,$(late_load_list)) ${RTOS_ELF} ${RTOS_LOAD_A};
+	@${OBJCOPY} -O binary $(addprefix -j ,$(late_load_list)) ${RTOS_ELF} ${RTOS_LOAD_B};
+#./scripts/package_bl2-2.sh ${BL2_2} ${RTOS_LOAD_A} ${RTOS_LOAD_B} ${kernel_BUILD_DIR}