diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3345b6f..1347879 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -385,21 +385,25 @@
         add_target_map_file(${TARGET_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${TARGET_NAME}.map)
     endif()
 
-    if (${TARGET_PLATFORM} STREQUAL mps3)
+    if (${TARGET_PLATFORM} STREQUAL mps3 OR ${TARGET_PLATFORM} STREQUAL simple_platform)
 
         set(SECTORS_DIR ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/sectors)
         set(SECTORS_BIN_DIR ${SECTORS_DIR}/${use_case})
 
         file(REMOVE_RECURSE ${SECTORS_BIN_DIR})
         file(MAKE_DIRECTORY ${SECTORS_BIN_DIR})
-        file(COPY ${MPS3_FPGA_CONFIG} DESTINATION ${SECTORS_DIR})
 
         add_bin_generation_command(
             TARGET_NAME ${TARGET_NAME}
             OUTPUT_DIR  ${SECTORS_BIN_DIR}
             AXF_PATH    ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${TARGET_NAME}.axf
-            SECTION_PATTERNS    "${MPS3_SECTION_PATTERNS}"
-            OUTPUT_BIN_NAMES    "${MPS3_OUTPUT_BIN_NAMES}")
+            SECTION_PATTERNS    "${LINKER_SECTION_TAGS}"
+            OUTPUT_BIN_NAMES    "${LINKER_OUTPUT_BIN_TAGS}")
+
+        if (${TARGET_PLATFORM} STREQUAL mps3)
+            file(COPY ${MPS3_FPGA_CONFIG} DESTINATION ${SECTORS_DIR})
+        endif()
+
     elseif (${TARGET_PLATFORM} STREQUAL native)
 
         # If native build tests
diff --git a/scripts/cmake/bare-metal-sources.cmake b/scripts/cmake/bare-metal-sources.cmake
index 2bfe616..95950df 100644
--- a/scripts/cmake/bare-metal-sources.cmake
+++ b/scripts/cmake/bare-metal-sources.cmake
@@ -65,17 +65,19 @@
         # For deployment on the MPS3 FPGA platform, we need to produce
         # two bin files - one that is loaded into the ITCM, and another
         # that is loaded into the DDR region.
-        set(MPS3_SECTION_PATTERNS   "*.at_itcm" "*.at_ddr")
-        set(MPS3_OUTPUT_BIN_NAMES   "itcm.bin"  "ddr.bin")
+        set(LINKER_SECTION_TAGS     "*.at_itcm" "*.at_ddr")
+        set(LINKER_OUTPUT_BIN_TAGS  "itcm.bin"  "ddr.bin")
         set(MPS3_FPGA_CONFIG        "${CMAKE_CURRENT_SOURCE_DIR}/scripts/${TARGET_PLATFORM}/${TARGET_SUBSYSTEM}/images.txt")
     else ()
         message(FATAL_ERROR "Non compatible target subsystem: ${TARGET_SUBSYSTEM}")
     endif ()
 elseif (TARGET_PLATFORM STREQUAL simple_platform)
-    set(BSP_PACKAGE_DIR     "${PLAT_HAL}/bsp/bsp-packs/${TARGET_PLATFORM}")
-    set(LINKER_SCRIPT_NAME  "${TARGET_PLATFORM}")
+    set(BSP_PACKAGE_DIR         "${PLAT_HAL}/bsp/bsp-packs/${TARGET_PLATFORM}")
+    set(LINKER_SCRIPT_NAME      "${TARGET_PLATFORM}")
     include(${MEM_PROFILES_SRC_DIR}/${TARGET_PLATFORM}.cmake)
-    set(OPTIONAL_FLAGS      "${OPTIONAL_FLAGS}")
+    set(OPTIONAL_FLAGS          "${OPTIONAL_FLAGS}")
+    set(LINKER_SECTION_TAGS     "*.at_itcm" "*.at_ddr")
+    set(LINKER_OUTPUT_BIN_TAGS  "itcm.bin"  "ddr.bin")
 else ()
     message(FATAL_ERROR "Non compatible target platform ${TARGET_PLATFORM}")
 endif ()
