This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software: TI C/C++ Compiler
My project is load from \ti\simplelink_academy_01_11_00_0000\modules\projects\ble_projectzero
ti-rtos : tirtos_cc13xx_cc26xx_2_20_01_08
xdctools: xdctools_3_32_00_06_core
ti ble stack is : \ti\simplelink\ble_sdk_2_02_01_18
From the map file, ProjectZeroStack still have 0x0000ee3d flash unused, but ProjectZeroApp only have 0x000004b0 flash unused.
I have read the swru393e Chapter 10 that told me how to configure ble stack features. But I want to know how to configure map file boundary address.
Can I configure the Application Imagine code space、Stack Imagine code space、SNV and CCA? How to configure the Application Imagine code space、Stack Imagine code space、SNV and CCA boundary?
I want to set osal_snv = 2, but now I have to accept osal_snv = 1. Because Application Imagine code space is not enough, but stack Imagine code space have large free space memory. Flash Space is not enough for my application.
How to use Stack Frontier Generator to generate ccs_compiler_defines.bcfg files?
${CG_TOOL_HEX} -order MS --memwidth=8 --romwidth=8 --intel -o ${ProjName}.hex ${ProjName}.out
${TI_BLE_SDK_BASE}/tools/frontier/frontier.exe ccs ${PROJECT_LOC}/${ConfigName}/${ProjName}_linkInfo.xml ${PROJECT_ROOT}/TOOLS/ccs_compiler_defines.bcfg ${PROJECT_ROOT}/TOOLS/ccs_linker_defines.cmd.
where frontier.exe get ICALL_STACK0_ADDR ICALL_STACK0_START ICALL_RAM0_START value to create ccs_linker_defines.cmd and ccs_compiler_defines.bcfg?
How frontier.exe works and what can i do to modify ICALL_STACK0_ADDR 、ICALL_STACK0_START、 ICALL_RAM0_START value?
because I want to modify
--define=ICALL_STACK0_ADDR=0xe001
--define=ICALL_STACK0_START=0xe000
--define=ICALL_RAM0_START=0x20004348
to
--define=ICALL_STACK0_ADDR=0xC001
--define=ICALL_STACK0_START=0xC000
--define=ICALL_RAM0_START=0x20004348
when I directly modify it in the project, it lost.
Hi,
We also wanted to manually configure the ICALL_STACK0_ADDR to 0xE000. Currently, the frontier tool is automatically keeping this ICALL_STACK0_ADDR to 0x11000.
With ICALL_STACK0_ADDR=0x11000, the stack project's compiled binary size of 56000 bytes is making the stack binary to occupy upto 0x1EAC0. We suspect that the Flash last page: 0x1E000 is overlapping with stack binary. i.e) we feel, the Flash last page is overwritten with stack binary and the app binary is unable to cleanly keep CCA and CCFG contents on the Flash last page of 0x1E000.
1) With this we see that the application project is running fine without exceptions. But we the GAP advertising is not visible to Mobile app. i.e) The Mobile app is NOT listing the BLE device's name and other associated GAP advertising and scan response data. We wanted to move the stack binary by 4k back i.e) wanted to manually configure the ICALL_STACK0_ADDR to 0xE000 so that the Flash last page is empty and app binary can cleanly use this area for CCA and CCFG. Please share us some pointers, if you could solve above issue.
Best regards,
Prabhakar
Where Frontier Generator get ICALL_STACK0_ADDR 、ICALL_STACK0_START、 ICALL_RAM0_START value to generate ccs_compiler_defines.bcfg files?
It does not work When I set ICALL_STACK0_START=0x10000 ICALL_STACK0_ADDR=0x10001 ICALL_RAM0_START=0x20004348
at Properties -> ARM Linker -> Advanced Options ->Command Files Preprocessing -> Pre-define preprocessor macro _name to _value (--define)
when I rebuild the project, the ccs_compiler_defines.bcfg files was not changed. How Can I Changed the ccs_compiler_defines.bcfg files content?