diff options
author | Stefan Agner <stefan@agner.ch> | 2016-05-02 19:13:19 -0700 |
---|---|---|
committer | Stefan Agner <stefan@agner.ch> | 2016-05-09 17:17:05 -0700 |
commit | 21d6d84123de8e6e2ebdf5543b530403951b3059 (patch) | |
tree | 046a7fa39e1c7cff49792ac67f1ae899271a56b7 /examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm | |
parent | 2fb8ccd4adf6433033a402e2fa07c2f11c489518 (diff) |
resync with FreeRTOS_BSP_1.0.1_iMX7D
Diffstat (limited to 'examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm')
13 files changed, 682 insertions, 0 deletions
diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/CMakeLists.txt b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/CMakeLists.txt new file mode 100644 index 0000000..eae2fa5 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/CMakeLists.txt @@ -0,0 +1,172 @@ +INCLUDE(CMakeForceCompiler) + +# CROSS COMPILER SETTING +SET(CMAKE_SYSTEM_NAME Generic) +CMAKE_MINIMUM_REQUIRED (VERSION 2.6) + +# THE VERSION NUMBER +SET (Tutorial_VERSION_MAJOR 1) +SET (Tutorial_VERSION_MINOR 0) + +# ENABLE ASM +ENABLE_LANGUAGE(ASM) + +SET(CMAKE_STATIC_LIBRARY_PREFIX) +SET(CMAKE_STATIC_LIBRARY_SUFFIX) + +SET(CMAKE_EXECUTABLE_LIBRARY_PREFIX) +SET(CMAKE_EXECUTABLE_LIBRARY_SUFFIX) + + +# CURRENT DIRECTORY +SET(ProjDirPath ${CMAKE_CURRENT_SOURCE_DIR}) + +# DEBUG LINK FILE +set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} -T${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/linker/gcc/MCIMX7D_M4_tcm.ld -static") + +# RELEASE LINK FILE +set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} -T${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/linker/gcc/MCIMX7D_M4_tcm.ld -static") + +# DEBUG ASM FLAGS +SET(CMAKE_ASM_FLAGS_DEBUG "${CMAKE_ASM_FLAGS_DEBUG} -g -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb -Wall -fno-common -ffunction-sections -fdata-sections -ffreestanding -fno-builtin -mapcs -std=gnu99") + +# DEBUG C FLAGS +SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -g -O0 -fno-strict-aliasing -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb -MMD -MP -Wall -fno-common -ffunction-sections -fdata-sections -ffreestanding -fno-builtin -mapcs -std=gnu99") + +# DEBUG LD FLAGS +SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} -g -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 --specs=nano.specs -lm -Wall -fno-common -ffunction-sections -fdata-sections -ffreestanding -fno-builtin -Os -mthumb -mapcs -Xlinker --gc-sections -Xlinker -static -Xlinker -z -Xlinker muldefs -Xlinker --defsym=__stack_size__=0x400 -Xlinker --defsym=__heap_size__=0x4000") + +# RELEASE ASM FLAGS +SET(CMAKE_ASM_FLAGS_RELEASE "${CMAKE_ASM_FLAGS_RELEASE} -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb -Wall -fno-common -ffunction-sections -fdata-sections -ffreestanding -fno-builtin -mapcs -std=gnu99") + +# RELEASE C FLAGS +SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Os -fno-strict-aliasing -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb -MMD -MP -Wall -fno-common -ffunction-sections -fdata-sections -ffreestanding -fno-builtin -mapcs -std=gnu99") + +# RELEASE LD FLAGS +SET(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 --specs=nano.specs -lm -Wall -fno-common -ffunction-sections -fdata-sections -ffreestanding -fno-builtin -Os -mthumb -mapcs -Xlinker --gc-sections -Xlinker -static -Xlinker -z -Xlinker muldefs -Xlinker --defsym=__stack_size__=0x400 -Xlinker --defsym=__heap_size__=0x4000") + +# ASM MACRO +SET(CMAKE_ASM_FLAGS_DEBUG "${CMAKE_ASM_FLAGS_DEBUG} -D__DEBUG") + +# C MACRO +SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D__DEBUG") +SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DCPU_MCIMX7D_M4") +SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -D__NDEBUG") +SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DCPU_MCIMX7D_M4") + +# CXX MACRO + +# INCLUDE_DIRECTORIES +IF(CMAKE_BUILD_TYPE MATCHES Debug) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../..) + INCLUDE_DIRECTORIES(${ProjDirPath}/..) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/CMSIS/Include) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/devices) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/include) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/startup) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/drivers/inc) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/utilities/inc) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../..) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../middleware/multicore/open-amp) + INCLUDE_DIRECTORIES(${ProjDirPath}/..) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/imx7d_m4) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/env/bm) +ELSEIF(CMAKE_BUILD_TYPE MATCHES Release) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../..) + INCLUDE_DIRECTORIES(${ProjDirPath}/..) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/CMSIS/Include) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/devices) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/include) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/startup) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/drivers/inc) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../platform/utilities/inc) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../..) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../middleware/multicore/open-amp) + INCLUDE_DIRECTORIES(${ProjDirPath}/..) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/imx7d_m4) + INCLUDE_DIRECTORIES(${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/env/bm) +ENDIF() + +# ADD_EXECUTABLE +ADD_EXECUTABLE(rpmsg_str_echo_bm_example + "${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/startup/gcc/startup_MCIMX7D_M4.S" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/imx7d_m4/platform.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/imx7d_m4/rpmsg_platform_porting.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/rpmsg/rpmsg.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/rpmsg/rpmsg_ext.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/common/hil/hil.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/common/llist/llist.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/common/shm/sh_mem.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/config/config.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/env/env.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/rpmsg/rpmsg_core.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/virtio/virtio.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/virtio/virtio_ring.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/virtio/virtqueue.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/rpmsg/rpmsg_rtos.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/env/bm/rpmsg_porting.h" + "${ProjDirPath}/../../../../../../platform/drivers/inc/ccm_analog_imx7d.h" + "${ProjDirPath}/../../../../../../platform/drivers/inc/ccm_imx7d.h" + "${ProjDirPath}/../../../../../../platform/drivers/inc/lmem.h" + "${ProjDirPath}/../../../../../../platform/drivers/inc/rdc.h" + "${ProjDirPath}/../../../../../../platform/drivers/inc/rdc_defs_imx7d.h" + "${ProjDirPath}/../../../../../../platform/drivers/inc/wdog_imx.h" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/imx7d_m4/platform.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/imx7d_m4/platform_info.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/common/hil/hil.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/common/llist/llist.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/common/shm/sh_mem.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/config/config.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/rpmsg/remote_device.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/rpmsg/rpmsg.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/rpmsg/rpmsg_ext.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/rpmsg/rpmsg_core.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/virtio/virtio.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/virtio/virtqueue.c" + "${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/env/bm/rpmsg_porting.c" + "${ProjDirPath}/../../../../../../platform/drivers/src/ccm_analog_imx7d.c" + "${ProjDirPath}/../../../../../../platform/drivers/src/ccm_imx7d.c" + "${ProjDirPath}/../../../../../../platform/drivers/src/lmem.c" + "${ProjDirPath}/../../../../../../platform/drivers/src/rdc.c" + "${ProjDirPath}/../../../../../../platform/drivers/src/wdog_imx.c" + "${ProjDirPath}/../../../../../../platform/utilities/src/debug_console_imx.c" + "${ProjDirPath}/../../../../../../platform/utilities/inc/debug_console_imx.h" + "${ProjDirPath}/../../../../../../platform/utilities/src/print_scan.c" + "${ProjDirPath}/../../../../../../platform/utilities/src/print_scan.h" + "${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/startup/system_MCIMX7D_M4.c" + "${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/startup/system_MCIMX7D_M4.h" + "${ProjDirPath}/../../../../pin_mux.c" + "${ProjDirPath}/../../../../pin_mux.h" + "${ProjDirPath}/../../../../board.c" + "${ProjDirPath}/../../../../board.h" + "${ProjDirPath}/../../../../clock_freq.c" + "${ProjDirPath}/../../../../clock_freq.h" + "${ProjDirPath}/../hardware_init.c" + "${ProjDirPath}/../str_echo_bm.c" + "${ProjDirPath}/../../../../../../platform/drivers/src/uart_imx.c" + "${ProjDirPath}/../../../../../../platform/drivers/inc/uart_imx.h" + "${ProjDirPath}/../../../../../../platform/drivers/src/mu_imx.c" + "${ProjDirPath}/../../../../../../platform/drivers/inc/mu_imx.h" +) +SET_TARGET_PROPERTIES(rpmsg_str_echo_bm_example PROPERTIES OUTPUT_NAME "rpmsg_str_echo_bm_example.elf") + +TARGET_LINK_LIBRARIES(rpmsg_str_echo_bm_example -Wl,--start-group) +# LIBRARIES +IF(CMAKE_BUILD_TYPE MATCHES Debug) +ELSEIF(CMAKE_BUILD_TYPE MATCHES Release) +ENDIF() + +# SYSTEM LIBRARIES +TARGET_LINK_LIBRARIES(rpmsg_str_echo_bm_example m) +TARGET_LINK_LIBRARIES(rpmsg_str_echo_bm_example c) +TARGET_LINK_LIBRARIES(rpmsg_str_echo_bm_example gcc) +TARGET_LINK_LIBRARIES(rpmsg_str_echo_bm_example nosys) +TARGET_LINK_LIBRARIES(rpmsg_str_echo_bm_example -Wl,--end-group) + +# MAP FILE +SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} -Xlinker -Map=debug/rpmsg_str_echo_bm_example.map") +SET(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} -Xlinker -Map=release/rpmsg_str_echo_bm_example.map") + +# BIN AND HEX +ADD_CUSTOM_COMMAND(TARGET rpmsg_str_echo_bm_example POST_BUILD COMMAND ${CMAKE_OBJCOPY} -Oihex ${EXECUTABLE_OUTPUT_PATH}/rpmsg_str_echo_bm_example.elf ${EXECUTABLE_OUTPUT_PATH}/rpmsg_str_echo_bm_example.hex) +ADD_CUSTOM_COMMAND(TARGET rpmsg_str_echo_bm_example POST_BUILD COMMAND ${CMAKE_OBJCOPY} -Obinary ${EXECUTABLE_OUTPUT_PATH}/rpmsg_str_echo_bm_example.elf ${EXECUTABLE_OUTPUT_PATH}/rpmsg_str_echo_bm_example.bin) diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_all.bat b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_all.bat new file mode 100644 index 0000000..0cf721f --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_all.bat @@ -0,0 +1,5 @@ +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug . +mingw32-make -j4 +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release . +mingw32-make -j4 +pause diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_all.sh b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_all.sh new file mode 100755 index 0000000..3827529 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_all.sh @@ -0,0 +1,5 @@ +#!/bin/sh +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug . +make -j4 +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release . +make -j4 diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_debug.bat b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_debug.bat new file mode 100644 index 0000000..e9ccfdd --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_debug.bat @@ -0,0 +1,3 @@ +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug . +mingw32-make -j4 +pause diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_debug.sh b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_debug.sh new file mode 100755 index 0000000..effd076 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_debug.sh @@ -0,0 +1,3 @@ +#!/bin/sh +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug . +make -j4 diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_release.bat b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_release.bat new file mode 100644 index 0000000..0759349 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_release.bat @@ -0,0 +1,3 @@ +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release . +mingw32-make -j4 +pause diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_release.sh b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_release.sh new file mode 100755 index 0000000..a12067d --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/build_release.sh @@ -0,0 +1,3 @@ +#!/bin/sh +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release . +make -j4 diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/clean.bat b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/clean.bat new file mode 100644 index 0000000..ffea088 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/clean.bat @@ -0,0 +1,3 @@ +RD /s /Q Debug Release CMakeFiles +DEL /s /Q /F Makefile cmake_install.cmake CMakeCache.txt +pause diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/clean.sh b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/clean.sh new file mode 100755 index 0000000..795ad87 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/armgcc/clean.sh @@ -0,0 +1,3 @@ +#!/bin/sh +rm -rf debug release CMakeFiles +rm -rf Makefile cmake_install.cmake CMakeCache.txt diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/ds5/.cproject b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/ds5/.cproject new file mode 100644 index 0000000..5493489 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/ds5/.cproject @@ -0,0 +1,137 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<?fileVersion 4.0.0?> +<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"> + <storageModule moduleId="org.eclipse.cdt.core.settings"> + <cconfiguration id="com.arm.eclipse.build.config.baremetal.exe.debug.893051445.1002809623"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.arm.eclipse.build.config.baremetal.exe.debug.893051445.1002809623" moduleId="org.eclipse.cdt.core.settings" name="debug"> + <externalSettings/> + <extensions> + <extension id="com.arm.eclipse.builder.armcc.error" point="org.eclipse.cdt.core.ErrorParser"/> + </extensions> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <configuration artifactExtension="axf" artifactName="${ProjName}" buildArtefactType="com.arm.eclipse.build.artefact.baremetal.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=com.arm.eclipse.build.artefact.baremetal.exe" cleanCommand="clean" description="" id="com.arm.eclipse.build.config.baremetal.exe.debug.893051445.1002809623" name="debug" parent="com.arm.eclipse.build.config.baremetal.exe.debug" postbuildStep="fromelf --bincombined --output=${ProjName}.bin ${ProjName}.axf"> + <folderInfo id="com.arm.eclipse.build.config.baremetal.exe.debug.893051445.1002809623." name="/" resourcePath=""> + <toolChain errorParsers="com.arm.eclipse.builder.armcc.error" id="com.arm.toolchain.baremetal.exe.debug.505048968" name="ARM Compiler" nonInternalBuilderId="com.arm.toolchain.baremetal.builder" superClass="com.arm.toolchain.baremetal.exe.debug"> + <targetPlatform binaryParser="" id="com.arm.toolchain.baremetal.exe.debug.505048968.350348883" name=""/> + <builder autoBuildTarget="all" buildPath="${workspace_loc:/app/debug}" cleanBuildTarget="clean" id="org.eclipse.cdt.build.core.internal.builder.38020294" incrementalBuildTarget="all" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" superClass="org.eclipse.cdt.build.core.internal.builder"/> + <tool command="armcc" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" errorParsers="" id="com.arm.tool.c.compiler.baremetal.exe.debug.1725848509" name="ARM C Compiler" superClass="com.arm.tool.c.compiler.baremetal.exe.debug"> + <option id="com.arm.tool.c.compiler.option.incpath.349366493" name="Include path (-I)" superClass="com.arm.tool.c.compiler.option.incpath"><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/CMSIS/Include"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/devices"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/include"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/startup"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/drivers/inc"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/utilities/inc"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../.."/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../middleware/multicore/open-amp"/><listOptionValue builtIn="false" value="${ProjDirPath}/.."/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/imx7d_m4"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/env/bm"/></option> + <option id="com.arm.tool.c.compiler.option.defmac.1627388367" name="Define macro (-D)" superClass="com.arm.tool.c.compiler.option.defmac"><listOptionValue builtIn="false" value="__DEBUG"/><listOptionValue builtIn="false" value="CPU_MCIMX7D_M4"/></option> + <option id="com.arm.tool.c.compiler.option.targetcpu.1309268616" name="Target CPU (--cpu)" superClass="com.arm.tool.c.compiler.option.targetcpu" value="Cortex-M4" valueType="string"/> + <option id="com.arm.tool.c.compiler.option.targetfpu.1098489790" name="Target FPU (--fpu)" superClass="com.arm.tool.c.compiler.option.targetfpu" value="FPv4-SP" valueType="string"/> + <option id="com.arm.tool.c.compiler.option.fpmode.1539082142" name="Floating-point mode (--fpmode)" superClass="com.arm.tool.c.compiler.option.fpmode" value="com.arm.tool.c.compiler.option.fpmode.default" valueType="enumerated"/> + <option id="com.arm.tool.c.compiler.option.fppcs.928968199" name="Floating-point PCS (--apcs)" superClass="com.arm.tool.c.compiler.option.fppcs" value="com.arm.tool.c.compiler.option.fppcs.auto" valueType="enumerated"/> + <option id="com.arm.tool.c.compiler.option.flags.49715708" name="Other flags" superClass="com.arm.tool.c.compiler.option.flags" value="--c99 --split_sections " valueType="string"/> + <option id="com.arm.tool.c.compiler.options.debug.enabled.652416105" name="Enable debug (-g)" superClass="com.arm.tool.c.compiler.options.debug.enabled" value="true" valueType="boolean"/> + <option id="com.arm.tool.assembler.option.preproc.664063762" name="Preprocess input before assembling (--cpreproc)" superClass="com.arm.tool.assembler.option.preproc" value="false" valueType="boolean"/> + <option id="com.arm.tool.c.compiler.option.endian.2486374826" name="Byte order" superClass="com.arm.tool.c.compiler.option.endian" value="com.arm.tool.c.compiler.option.endian.auto" valueType="enumerated"/> + <inputType id="com.arm.tool.c.compiler.input.1814530651" superClass="com.arm.tool.c.compiler.input"/> + <inputType id="com.arm.tool.cpp.compiler.input.988841684" superClass="com.arm.tool.cpp.compiler.input"/> + <option id="com.arm.tool.c.compiler.option.gnu.918776267" superClass="com.arm.tool.c.compiler.option.gnu" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.charsize.2487414230" superClass="com.arm.tool.c.compiler.option.charsize" valueType="enumerated" value="com.arm.tool.c.compiler.option.enum.auto"/><option id="com.arm.tool.c.compiler.baremetal.exe.debug.base.option.opt.7161815357" superClass="com.arm.tool.c.compiler.baremetal.exe.debug.base.option.opt" valueType="enumerated" value="com.arm.tool.c.compiler.option.optlevel.min"/><option id="com.arm.tool.c.compiler.option.optfor.6247478961" superClass="com.arm.tool.c.compiler.option.optfor" valueType="enumerated" value="com.arm.tool.c.compiler.option.optfor.auto"/><option id="com.arm.tool.c.compile.option.lang.6277911325" superClass="com.arm.tool.c.compile.option.lang" valueType="enumerated" value="com.arm.tool.c.compile.option.lang.auto"/><option id="com.arm.tool.c.compiler.option.strict.5005125187" superClass="com.arm.tool.c.compiler.option.strict" valueType="enumerated" value="com.arm.tool.c.compiler.option.strict.auto"/><option id="com.arm.tool.c.compiler.option.suppress.9263002259" superClass="com.arm.tool.c.compiler.option.suppress" valueType="string" value="1296,66"/><option id="com.arm.tool.c.compiler.options.debug.format.612087273" superClass="com.arm.tool.c.compiler.options.debug.format" valueType="enumerated" value="com.arm.tool.c.compiler.options.debug.format.auto"/><option id="com.arm.tool.c.compiler.option.inst.184924240" superClass="com.arm.tool.c.compiler.option.inst" valueType="enumerated" value="com.arm.tool.c.compiler.option.inst.auto"/><option id="com.arm.tool.c.compiler.option.inter.7512557278" superClass="com.arm.tool.c.compiler.option.inter" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.unalign.4829020809" superClass="com.arm.tool.c.compiler.option.unalign" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.vector.8538485181" superClass="com.arm.tool.c.compiler.option.vector" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.enum.3417334427" superClass="com.arm.tool.c.compiler.option.enum" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.suppresswarn.6877241890" superClass="com.arm.tool.c.compiler.option.suppresswarn" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.warnaserr.8477698999" superClass="com.arm.tool.c.compiler.option.warnaserr" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.enablerem.1475627921" superClass="com.arm.tool.c.compiler.option.enablerem" valueType="boolean" value="false"/></tool> + <tool id="com.arm.tool.cpp.compiler.baremetal.exe.debug.1769458477" name="ARM C++ Compiler" superClass="com.arm.tool.cpp.compiler.baremetal.exe.debug"> + <option id="com.arm.tool.c.compiler.option.flags.125692915" name="Other flags" superClass="com.arm.tool.c.compiler.option.flags" value="--c99 --split_sections " valueType="string"/> + </tool> + <tool command="armasm" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" errorParsers="" id="com.arm.tool.assembler.1155958963" name="ARM Assembler" superClass="com.arm.tool.assembler"> + <option id="com.arm.tool.assembler.option.cpu.423475341" name="Target CPU (--cpu)" superClass="com.arm.tool.assembler.option.cpu" value="Cortex-M4" valueType="string"/> + <option id="com.arm.tool.assembler.option.fpu.560570852" name="Target FPU (--fpu)" superClass="com.arm.tool.assembler.option.fpu" value="FPv4-SP" valueType="string"/> + <option id="com.arm.tool.assembler.option.fpmode.2114797651" name="Floating-point mode (--fpmode)" superClass="com.arm.tool.assembler.option.fpmode" value="com.arm.tool.c.compiler.option.fpmode.default" valueType="enumerated"/> + <option id="com.arm.tool.assembler.option.fppcs.2043711002" name="Floating-point PCS (--apcs)" superClass="com.arm.tool.assembler.option.fppcs" value="com.arm.tool.c.compiler.option.fppcs.auto" valueType="enumerated"/> + <option id="com.arm.tool.assembler.option.flags.2068342579" name="Other flags" superClass="com.arm.tool.assembler.option.flags" value="-I"${ProjDirPath}/../../../.." -I"${ProjDirPath}/.." " valueType="string"/> + <option id="com.arm.tool.assembler.option.preproc.664063762" name="Preprocess input before assembling (--cpreproc)" superClass="com.arm.tool.assembler.option.preproc" value="true" valueType="boolean"/> + <option id="com.arm.tool.assembler.option.preprocflags.2378867226" superClass="com.arm.tool.assembler.option.preprocflags" valueType="string" value="-D__DEBUG"/><option id="com.arm.tool.assembler.option.unalign.4258266699" superClass="com.arm.tool.assembler.option.unalign" valueType="boolean" value="false"/><option id="com.arm.tool.assembler.option.inter.3261238093" superClass="com.arm.tool.assembler.option.inter" valueType="boolean" value="false"/><option id="com.arm.tool.assembler.option.inst.5873939079" superClass="com.arm.tool.assembler.option.inst" valueType="enumerated" value="com.arm.tool.c.compiler.option.inst.auto"/><option id="com.arm.tool.assembler.option.endian.8337846792" superClass="com.arm.tool.assembler.option.endian" valueType="enumerated" value="com.arm.tool.c.compiler.option.endian.little"/><option id="com.arm.tool.assembler.option.debug.format.6509483166" superClass="com.arm.tool.assembler.option.debug.format" valueType="enumerated" value="com.arm.tool.c.compiler.options.debug.format.auto"/><option id="com.arm.tool.assembler.option.sup.8782670820" superClass="com.arm.tool.assembler.option.sup" valueType="string" value="1296,66"/></tool> + <tool command="armlink" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" errorParsers="" id="com.arm.tool.c.linker.1088675316" name="ARM Linker" superClass="com.arm.tool.c.linker"> + <option id="com.arm.tool.c.linker.option.cpu.267638742" name="Target CPU (--cpu)" superClass="com.arm.tool.c.linker.option.cpu" value="Cortex-M4" valueType="string"/> + <option id="com.arm.tool.c.linker.option.scatter.1868789905" name="Scatter file (--scatter)" superClass="com.arm.tool.c.linker.option.scatter" value="${ProjDirPath}/../../common/linker/arm/MCIMX7D_M4_tcm_rpmsg.scf" valueType="string"/> + <option id="com.arm.tool.c.linker.option.libs.1325797835" name="Libraries (--library)" superClass="com.arm.tool.c.linker.option.libs"/> + <option id="com.arm.tool.c.linker.option.libsearch.1542315655" name="Library search path (--userlibpath)" superClass="com.arm.tool.c.linker.option.libsearch"/> + <option id="com.arm.tool.c.linker.libs.491659161" name="Other library files" superClass="com.arm.tool.c.linker.libs"/> + <option id="com.arm.tool.c.linker.option.entry.1665317816" name="Image entry point (--entry)" superClass="com.arm.tool.c.linker.option.entry" value="Reset_Handler" valueType="string"/> + <option id="com.arm.tool.c.linker.option.imagemap.909474066" name="Generate image map (--map)" superClass="com.arm.tool.c.linker.option.imagemap" value="false" valueType="boolean"/> + <option id="com.arm.tool.c.linker.option.syslibs.948170747" name="Standard library search path (--libpath)" superClass="com.arm.tool.c.linker.option.syslibs"/> + + <inputType id="com.arm.tool.c.linker.input.334720080" superClass="com.arm.tool.c.linker.input"> + <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> + <additionalInput kind="additionalinput" paths="$(LIBS)"/> + </inputType> + <option id="com.arm.tool.c.linker.option.fpu.2967386698" superClass="com.arm.tool.c.linker.option.fpu" valueType="string" value="FPv4-SP"/><option id="com.arm.tool.c.linker.option.sizes.6405812899" superClass="com.arm.tool.c.linker.option.sizes" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.totals.5151552823" superClass="com.arm.tool.c.linker.option.totals" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.compress.480591148" superClass="com.arm.tool.c.linker.option.compress" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.stack.5421365167" superClass="com.arm.tool.c.linker.option.stack" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.inlineinfo.1681959647" superClass="com.arm.tool.c.linker.option.inlineinfo" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.elim.4684714427" superClass="com.arm.tool.c.linker.option.elim" valueType="boolean" value="false"/></tool> + <tool id="com.arm.tool.librarian.109887334" name="ARM Librarian" superClass="com.arm.tool.librarian"/> + </toolChain> + </folderInfo> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> + </cconfiguration> + <cconfiguration id="com.arm.eclipse.build.config.baremetal.exe.debug.2022285397.1552618666"> + <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.arm.eclipse.build.config.baremetal.exe.debug.2022285397.1552618666" moduleId="org.eclipse.cdt.core.settings" name="release"> + <externalSettings/> + <extensions> + <extension id="com.arm.eclipse.builder.armcc.error" point="org.eclipse.cdt.core.ErrorParser"/> + </extensions> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <configuration artifactExtension="axf" artifactName="${ProjName}" buildArtefactType="com.arm.eclipse.build.artefact.baremetal.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=com.arm.eclipse.build.artefact.baremetal.exe" cleanCommand="clean" description="" id="com.arm.eclipse.build.config.baremetal.exe.debug.2022285397.1552618666" name="release" parent="com.arm.eclipse.build.config.baremetal.exe.debug" postbuildStep="fromelf --bincombined --output=${ProjName}.bin ${ProjName}.axf"> + <folderInfo id="com.arm.eclipse.build.config.baremetal.exe.debug.2022285397.1552618666." name="/" resourcePath=""> + <toolChain id="com.arm.toolchain.baremetal.exe.debug.1871020344" name="ARM Compiler" nonInternalBuilderId="com.arm.toolchain.baremetal.builder" superClass="com.arm.toolchain.baremetal.exe.debug"> + <targetPlatform id="com.arm.toolchain.baremetal.exe.debug.1871020344.229212655" name=""/> + <builder autoBuildTarget="all" buildPath="${workspace_loc:/app/release}" cleanBuildTarget="clean" id="org.eclipse.cdt.build.core.internal.builder.1172218807" incrementalBuildTarget="all" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" superClass="org.eclipse.cdt.build.core.internal.builder"/> + <tool id="com.arm.tool.c.compiler.baremetal.exe.debug.724686906" name="ARM C Compiler" superClass="com.arm.tool.c.compiler.baremetal.exe.debug"> + <option id="com.arm.tool.c.compiler.option.incpath.2126170575" name="Include path (-I)" superClass="com.arm.tool.c.compiler.option.incpath"><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/CMSIS/Include"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/devices"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/include"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/devices/MCIMX7D/startup"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/drivers/inc"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../platform/utilities/inc"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../.."/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../middleware/multicore/open-amp"/><listOptionValue builtIn="false" value="${ProjDirPath}/.."/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/imx7d_m4"/><listOptionValue builtIn="false" value="${ProjDirPath}/../../../../../../middleware/multicore/open-amp/porting/env/bm"/></option> + <option id="com.arm.tool.c.compiler.option.defmac.741292309" name="Define macro (-D)" superClass="com.arm.tool.c.compiler.option.defmac"><listOptionValue builtIn="false" value="__NDEBUG"/><listOptionValue builtIn="false" value="CPU_MCIMX7D_M4"/></option> + <option id="com.arm.tool.c.compiler.option.targetcpu.499083253" name="Target CPU (--cpu)" superClass="com.arm.tool.c.compiler.option.targetcpu" value="Cortex-M4" valueType="string"/> + <option id="com.arm.tool.c.compiler.option.targetfpu.747092604" name="Target FPU (--fpu)" superClass="com.arm.tool.c.compiler.option.targetfpu" value="FPv4-SP" valueType="string"/> + <option id="com.arm.tool.c.compiler.option.fpmode.885590841" name="Floating-point mode (--fpmode)" superClass="com.arm.tool.c.compiler.option.fpmode" value="com.arm.tool.c.compiler.option.fpmode.default" valueType="enumerated"/> + <option id="com.arm.tool.c.compiler.option.fppcs.1131381472" name="Floating-point PCS (--apcs)" superClass="com.arm.tool.c.compiler.option.fppcs" value="com.arm.tool.c.compiler.option.fppcs.auto" valueType="enumerated"/> + <option id="com.arm.tool.c.compiler.baremetal.exe.debug.option.opt.445197165" name="Optimization level" superClass="com.arm.tool.c.compiler.baremetal.exe.debug.option.opt" value="com.arm.tool.c.compiler.option.optlevel.max" valueType="enumerated"/> + <option id="com.arm.tool.c.compiler.option.flags.1769123778" name="Other flags" superClass="com.arm.tool.c.compiler.option.flags" value="--c99 --split_sections " valueType="string"/> + <inputType id="com.arm.tool.c.compiler.input.1270990193" superClass="com.arm.tool.c.compiler.input"/> + <inputType id="com.arm.tool.cpp.compiler.input.840085126" superClass="com.arm.tool.cpp.compiler.input"/> + <option id="com.arm.tool.c.compiler.option.gnu.3621211769" superClass="com.arm.tool.c.compiler.option.gnu" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.charsize.6782194776" superClass="com.arm.tool.c.compiler.option.charsize" valueType="enumerated" value="com.arm.tool.c.compiler.option.enum.auto"/><option id="com.arm.tool.c.compiler.baremetal.exe.debug.base.option.opt.4242051617" superClass="com.arm.tool.c.compiler.baremetal.exe.debug.base.option.opt" valueType="enumerated" value="com.arm.tool.c.compiler.option.optlevel.max"/><option id="com.arm.tool.c.compiler.option.optfor.9839420442" superClass="com.arm.tool.c.compiler.option.optfor" valueType="enumerated" value="com.arm.tool.c.compiler.option.optfor.auto"/><option id="com.arm.tool.c.compile.option.lang.4607676728" superClass="com.arm.tool.c.compile.option.lang" valueType="enumerated" value="com.arm.tool.c.compile.option.lang.auto"/><option id="com.arm.tool.c.compiler.option.strict.3469754836" superClass="com.arm.tool.c.compiler.option.strict" valueType="enumerated" value="com.arm.tool.c.compiler.option.strict.auto"/><option id="com.arm.tool.c.compiler.options.debug.enabled.6478575375" superClass="com.arm.tool.c.compiler.options.debug.enabled" valueType="boolean" value="true"/><option id="com.arm.tool.c.compiler.option.suppress.1879075446" superClass="com.arm.tool.c.compiler.option.suppress" valueType="string" value="1296,66"/><option id="com.arm.tool.c.compiler.options.debug.format.9367627286" superClass="com.arm.tool.c.compiler.options.debug.format" valueType="enumerated" value="com.arm.tool.c.compiler.options.debug.format.auto"/><option id="com.arm.tool.c.compiler.option.inst.3073942755" superClass="com.arm.tool.c.compiler.option.inst" valueType="enumerated" value="com.arm.tool.c.compiler.option.inst.auto"/><option id="com.arm.tool.c.compiler.option.endian.7021383546" superClass="com.arm.tool.c.compiler.option.endian" valueType="enumerated" value="com.arm.tool.c.compiler.option.endian.auto"/><option id="com.arm.tool.c.compiler.option.inter.3832584480" superClass="com.arm.tool.c.compiler.option.inter" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.unalign.1598197850" superClass="com.arm.tool.c.compiler.option.unalign" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.vector.7474900736" superClass="com.arm.tool.c.compiler.option.vector" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.enum.5222708518" superClass="com.arm.tool.c.compiler.option.enum" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.suppresswarn.8839959350" superClass="com.arm.tool.c.compiler.option.suppresswarn" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.warnaserr.7148222031" superClass="com.arm.tool.c.compiler.option.warnaserr" valueType="boolean" value="false"/><option id="com.arm.tool.c.compiler.option.enablerem.666857113" superClass="com.arm.tool.c.compiler.option.enablerem" valueType="boolean" value="false"/></tool> + <tool id="com.arm.tool.cpp.compiler.baremetal.exe.debug.1278927352" name="ARM C++ Compiler" superClass="com.arm.tool.cpp.compiler.baremetal.exe.debug"> + <option id="com.arm.tool.c.compiler.option.flags.191883218" name="Other flags" superClass="com.arm.tool.c.compiler.option.flags" value="--c99 --split_sections " valueType="string"/> + </tool> + <tool id="com.arm.tool.assembler.782505281" name="ARM Assembler" superClass="com.arm.tool.assembler"> + <option id="com.arm.tool.assembler.option.cpu.1791675215" name="Target CPU (--cpu)" superClass="com.arm.tool.assembler.option.cpu" value="Cortex-M4" valueType="string"/> + <option id="com.arm.tool.assembler.option.fpu.1669042968" name="Target FPU (--fpu)" superClass="com.arm.tool.assembler.option.fpu" value="FPv4-SP" valueType="string"/> + <option id="com.arm.tool.assembler.option.fpmode.150044025" name="Floating-point mode (--fpmode)" superClass="com.arm.tool.assembler.option.fpmode" value="com.arm.tool.c.compiler.option.fpmode.default" valueType="enumerated"/> + <option id="com.arm.tool.assembler.option.fppcs.1033303317" name="Floating-point PCS (--apcs)" superClass="com.arm.tool.assembler.option.fppcs" value="com.arm.tool.c.compiler.option.fppcs.auto" valueType="enumerated"/> + <option id="com.arm.tool.assembler.option.flags.1985199179" name="Other flags" superClass="com.arm.tool.assembler.option.flags" value="-I"${ProjDirPath}/../../../.." -I"${ProjDirPath}/.." " valueType="string"/> + <option id="com.arm.tool.assembler.option.preproc.664063763" name="Preprocess input before assembling (--cpreproc)" superClass="com.arm.tool.assembler.option.preproc" value="false" valueType="boolean"/> + <option id="com.arm.tool.assembler.option.preprocflags.9614545676" superClass="com.arm.tool.assembler.option.preprocflags" valueType="string" value=""/><option id="com.arm.tool.assembler.option.unalign.5172278998" superClass="com.arm.tool.assembler.option.unalign" valueType="boolean" value="false"/><option id="com.arm.tool.assembler.option.inter.398199908" superClass="com.arm.tool.assembler.option.inter" valueType="boolean" value="false"/><option id="com.arm.tool.assembler.option.inst.3130625355" superClass="com.arm.tool.assembler.option.inst" valueType="enumerated" value="com.arm.tool.c.compiler.option.inst.auto"/><option id="com.arm.tool.assembler.option.endian.4295558388" superClass="com.arm.tool.assembler.option.endian" valueType="enumerated" value="com.arm.tool.c.compiler.option.endian.little"/><option id="com.arm.tool.assembler.option.debug.format.4611606733" superClass="com.arm.tool.assembler.option.debug.format" valueType="enumerated" value="com.arm.tool.c.compiler.options.debug.format.auto"/><option id="com.arm.tool.assembler.option.sup.5181146083" superClass="com.arm.tool.assembler.option.sup" valueType="string" value="1296,66"/></tool> + <tool id="com.arm.tool.c.linker.1301355868" name="ARM Linker" superClass="com.arm.tool.c.linker"> + <option id="com.arm.tool.c.linker.option.cpu.522518248" name="Target CPU (--cpu)" superClass="com.arm.tool.c.linker.option.cpu" value="Cortex-M4" valueType="string"/> + <option id="com.arm.tool.c.linker.option.scatter.208008498" name="Scatter file (--scatter)" superClass="com.arm.tool.c.linker.option.scatter" value="${ProjDirPath}/../../common/linker/arm/MCIMX7D_M4_tcm_rpmsg.scf" valueType="string"/> + <option id="com.arm.tool.c.linker.option.libs.1119897339" name="Libraries (--library)" superClass="com.arm.tool.c.linker.option.libs"/> + <option id="com.arm.tool.c.linker.option.libsearch.226638094" name="Library search path (--userlibpath)" superClass="com.arm.tool.c.linker.option.libsearch"/> + <option id="com.arm.tool.c.linker.libs.962860959" name="Other library files" superClass="com.arm.tool.c.linker.libs"/> + <option id="com.arm.tool.c.linker.option.entry.2139204104" name="Image entry point (--entry)" superClass="com.arm.tool.c.linker.option.entry" value="Reset_Handler" valueType="string"/> + <option id="com.arm.tool.c.linker.option.imagemap.754891612" name="Generate image map (--map)" superClass="com.arm.tool.c.linker.option.imagemap" value="false" valueType="boolean"/> + <option id="com.arm.tool.c.linker.option.syslibs.948170748" name="Standard library search path (--libpath)" superClass="com.arm.tool.c.linker.option.syslibs"/> + + <inputType id="com.arm.tool.c.linker.input.2130990920" superClass="com.arm.tool.c.linker.input"> + <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/> + <additionalInput kind="additionalinput" paths="$(LIBS)"/> + </inputType> + <option id="com.arm.tool.c.linker.option.fpu.5304257799" superClass="com.arm.tool.c.linker.option.fpu" valueType="string" value="FPv4-SP"/><option id="com.arm.tool.c.linker.option.sizes.9252686215" superClass="com.arm.tool.c.linker.option.sizes" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.totals.2739840084" superClass="com.arm.tool.c.linker.option.totals" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.compress.2656827798" superClass="com.arm.tool.c.linker.option.compress" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.stack.5997836857" superClass="com.arm.tool.c.linker.option.stack" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.inlineinfo.3786004273" superClass="com.arm.tool.c.linker.option.inlineinfo" valueType="boolean" value="false"/><option id="com.arm.tool.c.linker.option.elim.3360891949" superClass="com.arm.tool.c.linker.option.elim" valueType="boolean" value="false"/></tool> + <tool id="com.arm.tool.librarian.2006874949" name="ARM Librarian" superClass="com.arm.tool.librarian"/> + </toolChain> + </folderInfo> + </configuration> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> + </cconfiguration> + </storageModule> + <storageModule moduleId="cdtBuildSystem" version="4.0.0"> + <project id="com.arm.eclipse.build.project.baremetal.exe.1023008919" name="Bare-metal Executable" projectType="com.arm.eclipse.build.project.baremetal.exe"/> + </storageModule> + <storageModule moduleId="scannerConfiguration"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/> + <scannerConfigBuildInfo instanceId="com.arm.eclipse.build.config.baremetal.exe.debug.893051445;com.arm.eclipse.build.config.baremetal.exe.debug.893051445.;com.arm.tool.c.compiler.baremetal.exe.debug.1501911384;com.arm.tool.c.compiler.input.905747706"> + <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.arm.eclipse.builder.armcc.ARMCompilerDiscoveryProfile"/> + </scannerConfigBuildInfo> + </storageModule> + <storageModule moduleId="refreshScope" versionNumber="1"> + <resource resourceType="PROJECT" workspacePath="/app"/> + </storageModule> + <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> +</cproject> diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/ds5/.project b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/ds5/.project new file mode 100644 index 0000000..e5095fd --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/ds5/.project @@ -0,0 +1,86 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>rpmsg_str_echo_bm_example_imx7d_val_m4</name> + <comment/> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> + <triggers>clean,full,incremental,</triggers> + <arguments> + <dictionary> + <key>?name?</key> + <value/> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.append_environment</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.autoBuildTarget</key> + <value>all</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildArguments</key> + <value/> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildCommand</key> + <value>make</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.buildLocation</key> + <value/> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.cleanBuildTarget</key> + <value>clean</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.contents</key> + <value>org.eclipse.cdt.make.core.activeConfigSettings</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableAutoBuild</key> + <value>false</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableCleanBuild</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.enableFullBuild</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.fullBuildTarget</key> + <value>all</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.stopOnError</key> + <value>true</value> + </dictionary> + <dictionary> + <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key> + <value>true</value> + </dictionary> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name> + <triggers>full,incremental,</triggers> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.cdt.core.cnature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature> + <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature> + </natures> + <linkedResources> + <link><name>startup</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>startup/startup_MCIMX7D_M4.s</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/devices/MCIMX7D/startup/arm/startup_MCIMX7D_M4.s</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/platform.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/imx7d_m4/platform.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg_platform_porting.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/imx7d_m4/rpmsg_platform_porting.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/rpmsg/rpmsg.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg_ext.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/rpmsg/rpmsg_ext.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/hil.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/common/hil/hil.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/llist.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/common/llist/llist.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/sh_mem.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/common/shm/sh_mem.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/config.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/config/config.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/env.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/env/env.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg_core.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/rpmsg/rpmsg_core.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/virtio.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/virtio/virtio.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/virtio_ring.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/virtio/virtio_ring.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/virtqueue.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/virtio/virtqueue.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg_rtos.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/rpmsg/rpmsg_rtos.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg_porting.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/env/bm/rpmsg_porting.h</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/ccm_analog_imx7d.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/inc/ccm_analog_imx7d.h</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/ccm_imx7d.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/inc/ccm_imx7d.h</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/lmem.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/inc/lmem.h</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/rdc.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/inc/rdc.h</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/rdc_defs_imx7d.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/inc/rdc_defs_imx7d.h</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/wdog_imx.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/inc/wdog_imx.h</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/platform.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/imx7d_m4/platform.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/platform_info.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/imx7d_m4/platform_info.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/hil.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/common/hil/hil.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/llist.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/common/llist/llist.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/sh_mem.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/common/shm/sh_mem.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/config.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/config/config.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/remote_device.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/rpmsg/remote_device.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/rpmsg/rpmsg.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg_ext.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/rpmsg/rpmsg_ext.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg_core.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/rpmsg/rpmsg_core.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/virtio.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/virtio/virtio.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/virtqueue.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/virtio/virtqueue.c</locationURI></link><link><name>rpmsg</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>rpmsg/rpmsg_porting.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/middleware/multicore/open-amp/porting/env/bm/rpmsg_porting.c</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/ccm_analog_imx7d.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/src/ccm_analog_imx7d.c</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/ccm_imx7d.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/src/ccm_imx7d.c</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/lmem.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/src/lmem.c</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/rdc.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/src/rdc.c</locationURI></link><link><name>system</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>system/wdog_imx.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/src/wdog_imx.c</locationURI></link><link><name>utilities</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>utilities/debug_console_imx.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/utilities/src/debug_console_imx.c</locationURI></link><link><name>utilities</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>utilities/debug_console_imx.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/utilities/inc/debug_console_imx.h</locationURI></link><link><name>utilities</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>utilities/print_scan.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/utilities/src/print_scan.c</locationURI></link><link><name>utilities</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>utilities/print_scan.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/utilities/src/print_scan.h</locationURI></link><link><name>startup</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>startup/system_MCIMX7D_M4.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/devices/MCIMX7D/startup/system_MCIMX7D_M4.c</locationURI></link><link><name>startup</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>startup/system_MCIMX7D_M4.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/devices/MCIMX7D/startup/system_MCIMX7D_M4.h</locationURI></link><link><name>board</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>board/pin_mux.c</name><type>1</type><locationURI>PARENT-4-PROJECT_LOC/pin_mux.c</locationURI></link><link><name>board</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>board/pin_mux.h</name><type>1</type><locationURI>PARENT-4-PROJECT_LOC/pin_mux.h</locationURI></link><link><name>board</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>board/board.c</name><type>1</type><locationURI>PARENT-4-PROJECT_LOC/board.c</locationURI></link><link><name>board</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>board/board.h</name><type>1</type><locationURI>PARENT-4-PROJECT_LOC/board.h</locationURI></link><link><name>board</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>board/clock_freq.c</name><type>1</type><locationURI>PARENT-4-PROJECT_LOC/clock_freq.c</locationURI></link><link><name>board</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>board/clock_freq.h</name><type>1</type><locationURI>PARENT-4-PROJECT_LOC/clock_freq.h</locationURI></link><link><name>board</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>board/hardware_init.c</name><type>1</type><locationURI>PARENT-1-PROJECT_LOC/hardware_init.c</locationURI></link><link><name>source</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>source/str_echo_bm.c</name><type>1</type><locationURI>PARENT-1-PROJECT_LOC/str_echo_bm.c</locationURI></link><link><name>driver</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>driver/uart_imx.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/src/uart_imx.c</locationURI></link><link><name>driver</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>driver/uart_imx.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/inc/uart_imx.h</locationURI></link><link><name>driver</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>driver/mu_imx.c</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/src/mu_imx.c</locationURI></link><link><name>driver</name><type>2</type><locationURI>virtual:/virtual</locationURI></link><link><name>driver/mu_imx.h</name><type>1</type><locationURI>PARENT-6-PROJECT_LOC/platform/drivers/inc/mu_imx.h</locationURI></link></linkedResources> + <variableList> + </variableList> +</projectDescription> diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/hardware_init.c b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/hardware_init.c new file mode 100644 index 0000000..aa69475 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/hardware_init.c @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2015, Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * o Redistributions of source code must retain the above copyright notice, this list + * of conditions and the following disclaimer. + * + * o Redistributions in binary form must reproduce the above copyright notice, this + * list of conditions and the following disclaimer in the documentation and/or + * other materials provided with the distribution. + * + * o Neither the name of Freescale Semiconductor, Inc. nor the names of its + * contributors may be used to endorse or promote products derived from this + * software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "board.h" +#include "pin_mux.h" + +void hardware_init(void) +{ + /* Board specific RDC settings */ + BOARD_RdcInit(); + + /* Board specific clock settings */ + BOARD_ClockInit(); + + /* initialize debug uart */ + dbg_uart_init(); + + /* RDC MU*/ + RDC_SetPdapAccess(RDC, BOARD_MU_RDC_PDAP, 3 << (BOARD_DOMAIN_ID * 2), false, false); + + /* Enable clock gate for MU*/ + CCM_ControlGate(CCM, BOARD_MU_CCM_CCGR, ccmClockNeededRun); +} + +/******************************************************************************* + * EOF + ******************************************************************************/ diff --git a/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/str_echo_bm.c b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/str_echo_bm.c new file mode 100644 index 0000000..c96d505 --- /dev/null +++ b/examples/imx7d_val_m4/demo_apps/rpmsg/str_echo_bm/str_echo_bm.c @@ -0,0 +1,205 @@ +/* + * Copyright (c) 2015, Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * o Redistributions of source code must retain the above copyright notice, this list + * of conditions and the following disclaimer. + * + * o Redistributions in binary form must reproduce the above copyright notice, this + * list of conditions and the following disclaimer in the documentation and/or + * other materials provided with the distribution. + * + * o Neither the name of Freescale Semiconductor, Inc. nor the names of its + * contributors may be used to endorse or promote products derived from this + * software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "rpmsg/rpmsg_ext.h" +#include "string.h" +#include "assert.h" +#include "board.h" +#include "mu_imx.h" +#include "debug_console_imx.h" + +/* + * APP decided interrupt priority + */ +#define APP_MU_IRQ_PRIORITY 3 + +/* + * For the most worst case, master will send 3 consecutive messages which remote + * do not process. + * The synchronization between remote and master is that each time endpoint callback + * is called, the MU Receive interrupt is temperorily disabled. Until the next time + * remote consumes the message, the interrupt will not be enabled again. + * When the interrupt is not enabled, Master can not send the notify, it will blocks + * there and can not send further message. + * In the worst case, master send the first message, it triggles the ISR in remote + * side, remote ISR clear the MU status bit so master can send the second message + * and notify again, master can continue to send the 3rd message but will blocks + * when trying to notify. Meanwhile, remote side is still in the first ISR which + * has a loop to receive all the 3 messages. + * Master is blocked and can not send the 4th message, remote side ISR stores all + * this 3 messages to app buffer and informs the app layer to consume them. After + * 3 messages are consumed, the ISR is enabled again and the second notify is received. + * This unblocks the master to complete the 3rd notify and send the 4th message. + * The situation goes on and we can see application layer need a maximum size 3 + * buffer to hold the unconsumed messages. STRING_BUFFER_CNT is therefore set to 3 + */ +#define STRING_BUFFER_CNT 3 + +typedef struct +{ + unsigned long src; + void* data; + int len; +} app_message_t; + +/* Globals */ +static struct rpmsg_channel *app_chnl = NULL; +static app_message_t app_msg[STRING_BUFFER_CNT]; +static char app_buf[512]; /* Each RPMSG buffer can carry less than 512 payload */ +static uint8_t app_idx = 0; +static uint8_t handler_idx = 0; +static volatile int32_t msg_count = 0; + +static void rpmsg_enable_rx_int(bool enable) +{ + if (enable) + { + if ((--msg_count) == 0) + MU_EnableRxFullInt(MUB, RPMSG_MU_CHANNEL); + } + else + { + if ((msg_count++) == 0) + MU_DisableRxFullInt(MUB, RPMSG_MU_CHANNEL); + } +} + +static void rpmsg_read_cb(struct rpmsg_channel *rp_chnl, void *data, int len, + void * priv, unsigned long src) +{ + /* + * Temperorily Disable MU Receive Interrupt to avoid master + * sending too many messages and remote will fail to keep pace + * to consume (flow control) + */ + rpmsg_enable_rx_int(false); + + /* Hold the RPMsg rx buffer to be used in main loop */ + rpmsg_hold_rx_buffer(rp_chnl, data); + app_msg[handler_idx].src = src; + app_msg[handler_idx].data = data; + app_msg[handler_idx].len = len; + + /* Move to next free message index */ + handler_idx = (handler_idx + 1) % STRING_BUFFER_CNT; +} + +/* rpmsg_rx_callback will call into this for a channel creation event*/ +static void rpmsg_channel_created(struct rpmsg_channel *rp_chnl) +{ + /* We should give the created rp_chnl handler to app layer */ + app_chnl = rp_chnl; + + PRINTF("Name service handshake is done, M4 has setup a rpmsg channel [%d ---> %d]\r\n", app_chnl->src, app_chnl->dst); +} + +static void rpmsg_channel_deleted(struct rpmsg_channel *rp_chnl) +{ +} + +/* + * MU Interrrupt ISR + */ +void BOARD_MU_HANDLER(void) +{ + /* + * calls into rpmsg_handler provided by middleware + */ + rpmsg_handler(); +} + +/*! + * @brief Main function + */ +int main(void) +{ + struct remote_device *rdev; + int len; + void *tx_buf; + unsigned long size; + + hardware_init(); + + /* + * Prepare for the MU Interrupt + * MU must be initialized before rpmsg init is called + */ + MU_Init(BOARD_MU_BASE_ADDR); + NVIC_SetPriority(BOARD_MU_IRQ_NUM, APP_MU_IRQ_PRIORITY); + NVIC_EnableIRQ(BOARD_MU_IRQ_NUM); + + /* Print the initial banner */ + PRINTF("\r\nRPMSG String Echo Bare Metal Demo...\r\n"); + + /* RPMSG Init as REMOTE */ + PRINTF("RPMSG Init as Remote\r\n"); + rpmsg_init(0, &rdev, rpmsg_channel_created, rpmsg_channel_deleted, rpmsg_read_cb, RPMSG_MASTER); + + /* + * str_echo demo loop + */ + for (;;) + { + /* Wait message to be available */ + while (msg_count == 0) + { + } + + /* Copy string from RPMsg rx buffer */ + len = app_msg[app_idx].len; + assert(len < sizeof(app_buf)); + memcpy(app_buf, app_msg[app_idx].data, len); + app_buf[len] = 0; /* End string by '\0' */ + + if ((len == 2) && (app_buf[0] == 0xd) && (app_buf[1] == 0xa)) + PRINTF("Get New Line From Master Side From Slot %d\r\n", app_idx); + else + PRINTF("Get Message From Master Side : \"%s\" [len : %d] from slot %d\r\n", app_buf, len, app_idx); + + /* Get tx buffer from RPMsg */ + tx_buf = rpmsg_alloc_tx_buffer(app_chnl, &size, RPMSG_TRUE); + assert(tx_buf); + /* Copy string to RPMsg tx buffer */ + memcpy(tx_buf, app_buf, len); + /* Echo back received message with nocopy send */ + rpmsg_sendto_nocopy(app_chnl, tx_buf, len, app_msg[app_idx].src); + + /* Release held RPMsg rx buffer */ + rpmsg_release_rx_buffer(app_chnl, app_msg[app_idx].data); + app_idx = (app_idx + 1) % STRING_BUFFER_CNT; + + /* Once a message is consumed, minus the msg_count and might enable MU interrupt again */ + rpmsg_enable_rx_int(true); + } +} + +/******************************************************************************* + * EOF + ******************************************************************************/ |