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.

[参考译文] PROCESSOR-SDK-AM62X:"linker.cmd"、第 xx 行:错误:程序无法放入可用内存

Guru**** 1081280 points
Other Parts Discussed in Thread: SYSCONFIG
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1203940/processor-sdk-am62x-linker-cmd-line-xx-error-program-will-not-fit-into-available-memory

器件型号:PROCESSOR-SDK-AM62X
"Thread:SysConfig"中讨论的其他器件

您好、E2E 小组、  

您能帮助我解决以下错误吗?  我会尝试构建 M4F 映像/应用程序。  (我认为需要重新配置 linker.cmd stack_size,但 我不确定。) 我添加了几行代码、它启动了此错误;当我删除该代码时、它会消失。  

//----------------

time_t rawtime;
time (&rawtime);//获取当前时间
struct tm *pTimeInfo = localtime (&rawtime);//转换为本地时间
DebugP_log ("%02d:%02d:%02d \r\n "、pTimeInfo->TM_Hour、pTimeInfo->TM_min、pTimeInfo->TM_sec);

//----------------

错误日志、  

6$ make -s -C "/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang /"
编译:am62x:m4fss0-0:freertos:ti-arm-clang mcu_svc_linux.release.out:../../../drvCanTrnsRcvr.c
正在生成 SysConfig 文件...
正在运行脚本...
正在验证...
正在生成代码(MCU_Svc.syscfg)...
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_dpl_config.c...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_dpl_config.h...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_drivers_config.c...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_drivers_config.h...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_drivers_open_close.c...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_drivers_open_close.h...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_pinmux_config.c...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_power_clock_config.c...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_board_config.c...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_board_config.h...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_board_open_close.c...未更改
/home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/harman/Am62x_MCU/mcu_svc/am62x-sk/m4fss0-0_freertos/ti-arm-clang/generated/ti_board_open_close.h...未更改

链接:am62x:m4fss0-0:freertos:ti-arm-clang mcu_svc_linux.release.out ...
"linker.cmd"、第29行:错误:程序将无法放入可用存储器中、或
该段包含的调用站点需要一个不能的 trampoline
生成的符号链接。 段对齐放置失败
".data"大小0x507。 可用存储器范围:
M4F_DRAM 大小:0x10000未使用:0x4b0最大孔:0x4b0
错误:链接期间遇到错误;未找到"mcu_svc_linux.release.out"
构建
tiarmclang:错误:tiarmlnk 命令失败、退出代码1 (使用-v 查看调用)
Makefile:172:目标"cu_Svc_linux.release.out"的食谱失败
制造:***[MCU_Svc_linux.release.out]错误1

linker.cmd 文件:


/*确保以下 retain 位于您的链接器命令文件中、它将矢量表保留为最终的二进制文件*/
--retain="*(.vectors )"
/*这是在 main()中运行的代码所使用的堆栈。
*在 NORTOS 情况下,
*-这意味着 ISR 之外的所有代码都使用这个堆栈
*如果是 FreeRTOS
*-这意味着在 main ()中调用 vTaskStartScheduler ()之前的所有代码
*使用此堆栈。
*-在 vTaskStartScheduler ()之后,在 FreeRTOS 中创建的每个任务都有其自己的堆栈
*/
-- stack_size=16384.
/*这是 NORTOS 和 FreeRTOS 中 malloc () API 的堆大小
*这也是 FreeRTOS 中 pvPortMalloc 使用的堆
*/
-- heap_size=32768


部分

/*这有 M4F 入口点和矢量表、必须位于0x0 */
.vectors:{}palign (8)> M4F_VECS
.text:{}palign (8)> M4F_IRAM /*这是代码所在的位置*/

.bss:{}palign (8)> M4F_DRAM /*这是未初始化的全局变量的位置*/
RUN_START (__BSS_START)
RUN_END (__BSS_END)

.data:{}palign (8)> M4F_DRAM /*这是初始化全局变量和静态 GO 的位置*/
.rodata:{}palign (8)> m4f_dram /*这是 const 的 go 的位置*/
.sysmem:{}palign (8)> M4F_IRAM /*这是 malloc 堆的位置*/
.stack:{}palign (8)> M4F_IRAM /*这是 main ()栈的位置*/

组{
/*这是 Linux 用于了解 IPC"VRINGs"所在位置的资源表*/
.resource_table:{}palign (4096)
}> DDR_0

/* C++项目所需的段*/
.arm.exidx:{}palign (8)> M4F_IRAM /* C++异常处理所需*/
.init_array:{}palign (8)> M4F_IRAM /*包含在 main 之前调用的函数指针*/
.fini_array:{}palign (8)> M4F_IRAM /*包含在 main */之后调用的函数指针
}

外部闪存

M4F_VECS:origin = 0x00000000,length = 0x00000200
M4F_IRAM:origin = 0x00000200、length = 0x0002FE00
M4F_DRAM:origin = 0x00030000,length = 0x00010000

/*当使用多核应用程序时,即多个 R5F/M4F 处于活动状态,请确保
*该存储器不与 R5F 重叠
*/
/*当 M4内核使用 Linux 提前引导时、必须将资源表放在 DDR_0的开头*/
DDR_0:origin = 0x9CC00000、length = 0x1000

}

SDK:

  TI-PROCESSOR-SDK-LINUX-am62xx-EVM-08.04.01.09

  MCU_PLUS_SDK_am62x_08_04_00_16

此致、  

Vadivel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vadivel:

    第29行:错误:程序不适合可用内存,或
    该段包含的调用站点需要一个不能的 trampoline
    生成的符号链接。 段对齐放置失败
    ".data"大小0x507。 可用存储器范围:
    M4f_DRAM 大小:0x10000未使用:0x4b0最大孔:0x4b0[/引号]

    从上面的错误日志来看、`似乎是 μ V .data `程序的部分不适合可用内存范围。 分配到的存储器的长度 M4F_DRAM 位置 0x10000  字节和未使用的存储器是 0x4b0 字节 但是  T 他是` .data 程序的`段需要 未使用的 length 存储器 0x507的情况 在您的程序中不可用的字节 但您可以分配` .data `段至存储器范围高于 M4F_DRAM 的 DDR。

    谢谢。此致、

    Tushar Thakur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢 Tushar!   

    能否混合使用  M4F_DRAM 和 DDR_1的配置?

    这意味着、 我可以 在 DDR_1上执行.data 吗? 并将其余配置保留为 M4F_DRAM?

    例如 linker.cmd 文件内容  


    /*确保以下 retain 位于您的链接器命令文件中、它将矢量表保留为最终的二进制文件*/
    --retain="*(.vectors )"
    /*这是在 main()中运行的代码所使用的堆栈。
    *在 NORTOS 情况下,
    *-这意味着 ISR 之外的所有代码都使用这个堆栈
    *如果是 FreeRTOS
    *-这意味着在 main ()中调用 vTaskStartScheduler ()之前的所有代码
    *使用此堆栈。
    *-在 vTaskStartScheduler ()之后,在 FreeRTOS 中创建的每个任务都有其自己的堆栈
    */
    -- stack_size=16384.

    /*这是 NORTOS 和 FreeRTOS 中 malloc () API 的堆大小
    *这也是 FreeRTOS 中 pvPortMalloc 使用的堆
    */
    -- heap_size=32768


    部分

    /*这有 M4F 入口点和矢量表、必须位于0x0 */
    .vectors:{}palign (8)> M4F_VECS
    .text:{}palign (8)> M4F_IRAM /*这是代码所在的位置*/

    .bss:{}palign (8)> M4F_DRAM /*这是未初始化的全局变量的位置*/
    RUN_START (__BSS_START)
    RUN_END (__BSS_END)

    .data:{}palign (8)> DDR_1 /*这是初始化全局变量和静态 GO 的位置*/
    .rodata:{}palign (8)> m4f_dram /*这是 const 的 go 的位置*/
    .sysmem:{}palign (8)> M4F_IRAM /*这是 malloc 堆的位置*/
    .stack:{}palign (8)> M4F_IRAM /*这是 main ()栈的位置*/

    组{
    /*这是 Linux 用于了解 IPC"VRINGs"所在位置的资源表*/
    .resource_table:{}palign (4096)
    }> DDR_0

    /* C++项目所需的段*/
    .arm.exidx:{}palign (8)> M4F_IRAM /* C++异常处理所需*/
    .init_array:{}palign (8)> M4F_IRAM /*包含在 main 之前调用的函数指针*/
    .fini_array:{}palign (8)> M4F_IRAM /*包含在 main */之后调用的函数指针
    }

    外部闪存

    M4F_VECS:origin = 0x00000000,length = 0x00000200
    M4F_IRAM:origin = 0x00000200、length = 0x0002FE00
    M4F_DRAM:origin = 0x00030000,length = 0x00010000

    /*当使用多核应用程序时,即多个 R5F/M4F 处于活动状态,请确保
    *该存储器不与 R5F 重叠
    */
    /*当 M4内核使用 Linux 提前引导时、必须将资源表放在 DDR_0的开头*/
    DDR_0:origin = 0x9CC00000、length = 0x1000
    DDR_1:origin = 0x9CB00000,length = 0x100000
    }

    此致、  

    Vadivel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vadivel:

    能否混合使用  M4F_DRAM 和 DDR_1的配置?

    这意味着、 我可以 在 DDR_1上执行.data 吗? 并将其余配置保留为 M4F_DRAM?

    [/报价]

    是的、可以混合配置 M4F_DRAM 和 DDR_1。 您可以放置 n ü` .data `部分 DDR 和中其余部分的内容 M4F_IRAM  和 M4F_DRAM 。 但会延迟 DDR 访问放入的数据要高得多 M4F_DRAM 。 与`相比、程序的性能会稍慢一些 .data 将`Ω 部分置于中 M4F_DRAM

    为了更好地理解,请参阅常见问题解答 使用 M4F 从 DDR 执行代码 。

    谢谢。此致、

    Tushar Thakur

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢 Tushar!  

    它不能正常工作 DDR_1 配置。 图像/应用程序编译正常、并且输出(am62-mcu-m4f0_0-FW)会生成。  运行时不会出现。  (当我 搬回房间时、它就开始工作了 M4F_DRAM 配置)。  

    Am62x EVM 是否支持 DDR_1? 使用 DDR_1是否还需要做任何其他工作。

     

    我尝试了以下选项、  

    选项-1:将.data 段更改为'DR_1'、并将其余配置相同。

    .data:{}palign (8)> DDR_1 /*这是初始化全局变量和静态 GO 的位置*/

    DDR_1    :origin = 0x9CB00000,length = 0x100000

    选项-2:更换  M4F_DRAM  DDR_1

    .bss:  {}palign (8)> DDR_1     /*这是未初始化的全局变量的所在*/

    .data:{}palign (8)> DDR_1 /*这是初始化全局变量和静态 GO 的位置*/
    .rodata:{}palign (8)> DDR_1 /*这是 const 's go 的位置*/

    DDR_1    :origin = 0x9CB00000,length = 0x100000

    此致、  

    Vadivel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vadivel:

    无法使用 DDR_1 配置。 图像/应用程序编译正常、并且输出(am62-mcu-m4f0_0-FW)会生成。  运行时不会出现。  (当我 搬回房间时、它就开始工作了 M4F_DRAM 配置)。  [/报价]

    您需要配置 M4F 内核的 RAT 设置才能访问 DDR。 在中 example.syscfg 文件执行以下更改。  

    1.更改区大小 CONFIG_ADDR_TRANSLATE_REGION0  512 MB 256 MB。


    2.添加 以下配置的 RAT 区域。

    如果您需要任何帮助/参考、请访问上面分享的常见问题解答。

    谢谢。此致、

    Tushar Thakur   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    已经在那里,  

       

    但仍然无法正常工作。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vadivel:

    感谢您分享屏幕截图。

    1. 请确认您只在移动` .data μ`部分到 DDR 存储器、而不是 μ` .text `部分。
    2. 您能否分享示例代码、以便我们最终进行调试

    谢谢。此致、

    Tushar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是。仅限.data 段。  

    这里是我的 linker.cmd 文件内容、  

    /* make sure below retain is there in your linker command file, it keeps the vector table in the final binary */
    --retain="*(.vectors)"
    /* This is the stack that is used by code running within main()
    * In case of NORTOS,
    * - This means all the code outside of ISR uses this stack
    * In case of FreeRTOS
    * - This means all the code until vTaskStartScheduler() is called in main()
    * uses this stack.
    * - After vTaskStartScheduler() each task created in FreeRTOS has its own stack
    */
    --stack_size=16384
    /* This is the heap size for malloc() API in NORTOS and FreeRTOS
    * This is also the heap used by pvPortMalloc in FreeRTOS
    */
    --heap_size=32768
    
    
    SECTIONS
    {
    /* This has the M4F entry point and vector table, this MUST be at 0x0 */
    .vectors:{} palign(8) > M4F_VECS
    .text: {} palign(8) > M4F_IRAM /* This is where code resides */
    
    .bss: {} palign(8) > M4F_DRAM /* This is where uninitialized globals go */
    RUN_START(__BSS_START)
    RUN_END(__BSS_END)
    
    .data: {} palign(8) > DDR_1 /* This is where initialized globals and static go */
    .rodata: {} palign(8) > M4F_DRAM /* This is where const's go */
    .sysmem: {} palign(8) > M4F_IRAM /* This is where the malloc heap goes */
    .stack: {} palign(8) > M4F_IRAM /* This is where the main() stack goes */
    
    GROUP {
    /* This is the resource table used by linux to know where the IPC "VRINGs" are located */
    .resource_table: {} palign(4096)
    } > DDR_0
    
    /* Sections needed for C++ projects */
    .ARM.exidx: {} palign(8) > M4F_IRAM /* Needed for C++ exception handling */
    .init_array: {} palign(8) > M4F_IRAM /* Contains function pointers called before main */
    .fini_array: {} palign(8) > M4F_IRAM /* Contains function pointers called after main */
    }
    
    MEMORY
    {
    M4F_VECS : ORIGIN = 0x00000000 , LENGTH = 0x00000200
    M4F_IRAM : ORIGIN = 0x00000200 , LENGTH = 0x0002FE00
    M4F_DRAM : ORIGIN = 0x00030000 , LENGTH = 0x00010000
    
    /* when using multi-core application's i.e more than one R5F/M4F active, make sure
    * this memory does not overlap with R5F's
    */
    /* Resource table must be placed at the start of DDR_0 when M4 core is early booting with Linux */
    DDR_0 : ORIGIN = 0x9CC00000 , LENGTH = 0x1000
    DDR_1 : ORIGIN = 0x9CB00000 , LENGTH = 0x100000
    
    }

    这是我的.syscfg 文件内容、  

    /**
    * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
    * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
    * @cliArgs --device "AM62x" --package "ALW" --part "Default" --context "m4fss0-0" --product "MCU_PLUS_SDK_AM62x@08.04.00"
    * @versions {"tool":"1.13.0+2553"}
    */
    
    /**
    * Import the modules used in this configuration.
    */
    const ipc = scripting.addModule("/drivers/ipc/ipc");
    const mcan = scripting.addModule("/drivers/mcan/mcan", {}, false);
    const mcan1 = mcan.addInstance();
    const addr_translate = scripting.addModule("/kernel/dpl/addr_translate", {}, false);
    const addr_translate1 = addr_translate.addInstance();
    const addr_translate2 = addr_translate.addInstance();
    const addr_translate3 = addr_translate.addInstance();
    const addr_translate4 = addr_translate.addInstance();
    const addr_translate5 = addr_translate.addInstance();
    const addr_translate6 = addr_translate.addInstance();
    const addr_translate7 = addr_translate.addInstance();
    const addr_translate8 = addr_translate.addInstance();
    const clock = scripting.addModule("/kernel/dpl/clock");
    const debug_log = scripting.addModule("/kernel/dpl/debug_log");
    const mpu_armv7 = scripting.addModule("/kernel/dpl/mpu_armv7", {}, false);
    const mpu_armv71 = mpu_armv7.addInstance();
    const mpu_armv72 = mpu_armv7.addInstance();
    
    /**
    * Write custom configuration values to the imported modules.
    */
    ipc.r5fss0_0 = "NONE";
    
    mcan1.$name = "CONFIG_MCAN0";
    mcan1.MCU_MCAN.$assign = "MCU_MCAN1";
    
    addr_translate1.$name = "CONFIG_ADDR_TRANSLATE_REGION0";
    addr_translate1.localAddr = 0x80000000;
    addr_translate1.size = 28;
    
    addr_translate2.$name = "CONFIG_ADDR_TRANSLATE_REGION1";
    addr_translate2.systemAddr = 0x90000000;
    addr_translate2.localAddr = 0x90000000;
    addr_translate2.size = 28;
    
    addr_translate3.$name = "CONFIG_ADDR_TRANSLATE_REGION2";
    addr_translate3.localAddr = 0xA0000000;
    addr_translate3.systemAddr = 0xA0000000;
    addr_translate3.size = 28;
    
    addr_translate4.$name = "CONFIG_ADDR_TRANSLATE_REGION3";
    addr_translate4.localAddr = 0xB0000000;
    addr_translate4.systemAddr = 0x20000000;
    addr_translate4.size = 28;
    
    addr_translate5.$name = "CONFIG_ADDR_TRANSLATE_REGION4";
    addr_translate5.systemAddr = 0x30000000;
    addr_translate5.localAddr = 0xC0000000;
    addr_translate5.size = 28;
    
    addr_translate6.$name = "CONFIG_ADDR_TRANSLATE_REGION5";
    addr_translate6.size = 28;
    addr_translate6.systemAddr = 0x40000000;
    addr_translate6.localAddr = 0xD0000000;
    
    addr_translate7.$name = "CONFIG_ADDR_TRANSLATE_REGION6";
    addr_translate7.size = 28;
    addr_translate7.localAddr = 0x60000000;
    addr_translate7.systemAddr = 0x60000000;
    
    addr_translate8.$name = "CONFIG_ADDR_TRANSLATE_REGION7";
    addr_translate8.localAddr = 0x70000000;
    addr_translate8.systemAddr = 0x70000000;
    addr_translate8.size = 28;
    
    debug_log.enableCssLog = false;
    debug_log.enableUartLog = true;
    debug_log.uartLog.$name = "CONFIG_UART0";
    
    mpu_armv71.$name = "CONFIG_MPU_REGION0";
    mpu_armv71.allowExecute = false;
    mpu_armv71.attributes = "NonCached";
    
    mpu_armv72.$name = "CONFIG_MPU_REGION1";
    mpu_armv72.size = 18;
    
    /**
    * Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
    * version of the tool will not impact the pinmux you originally saw. These lines can be completely deleted in order to
    * re-solve from scratch.
    */
    mcan1.MCU_MCAN.RX.$suggestSolution = "ball.D4";
    mcan1.MCU_MCAN.TX.$suggestSolution = "ball.E5";
    debug_log.uartLog.MCU_UART.$suggestSolution = "MCU_USART0";
    debug_log.uartLog.MCU_UART.RXD.$suggestSolution = "ball.B5";
    debug_log.uartLog.MCU_UART.TXD.$suggestSolution = "ball.A5";
    
    

    此致、  

    Vadivel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vadivel:

    请告知我们您是如何加载您的应用的。 您是否使用 Linux 在 M4F 内核上加载应用? 或者您是否使用 SBL 初始化电路板、然后使用 CCS 加载示例?

    此致、

    Prashant

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Prashant:  

    我正在 通过 Linux 加载、以便在 M4F 内核上加载应用。

    步骤:

    1)构建 M4F 映像(驱动程序、应用程序、组件等) "am62-mcu-m4f0_0-fw"

    2) 2)将"am62-mcu-m4f0_0-fw"文件复制到"/lib/firmware /"文件夹中

    3) 3)下电上电(以加载并运行新的 M4F 映像和应用程序)

    此致、  

    Vadivel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vadivel:

    我想在这里、Linux 可能会导致问题、因为 Linux 使用了 DDR。 请允许我用一天的时间重新创建引导 M4F 应用程序的方案、该方案具有  .data  段分配给 DDR , 来自 Linux。

    我还想了解一下您的应用  .map  在构建应用时由链接器生成的文件、我可以借助该文件了解不同段的存储器消耗情况。  您能分享一下吗   存储器配置  和  分段分配映射  中存在数据  .map  仅使用 IRAM 和 DRAM 而不使用 DDR 的应用程序的文件、而且在包含导致链接器错误的原始文章中提到的代码之前也要包含此文件。

    此致、

    Prashant

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Prashant:  

    请查找 MCU_Svc_linux.release.map 导致链接器错误的文件内容。  

    ******************************************************************************
    TI ARM Clang Linker Unix v2.1.1
    ******************************************************************************
    >> Linked Fri Mar 17 17:43:16 2023
    
    OUTPUT FILE NAME: <mcu_svc_linux.release.out>
    ENTRY POINT SYMBOL: "_c_int00" address: 0000ac47
    
    
    MEMORY CONFIGURATION
    
    name origin length used unused attr fill
    ---------------------- -------- --------- -------- -------- ---- --------
    M4F_VECS 00000000 00000200 00000140 000000c0 RWIX
    M4F_IRAM 00000200 0002fe00 00018120 00017ce0 RWIX
    M4F_DRAM 00030000 00010000 0000fb70 00000490 RWIX
    DDR_1 9cb00000 00100000 00000000 00100000 RWIX
    DDR_0 9cc00000 00001000 00001000 00000000 RWIX
    
    
    SEGMENT ALLOCATION MAP
    
    run origin load origin length init length attrs members
    ---------- ----------- ---------- ----------- ----- -------
    00000000 00000000 00000140 00000140 rw-
    00000000 00000000 00000140 00000140 rw- .vectors
    00000000 00000000 00000510 00000510 rw-
    00000000 00000000 00000510 00000510 rw- .data
    00000200 00000200 0000c120 0000c120 r-x
    00000200 00000200 0000c120 0000c120 r-x .text
    0000c320 0000c320 0000c000 00000000 rw-
    0000c320 0000c320 00008000 00000000 rw- .sysmem
    00014320 00014320 00004000 00000000 rw- .stack
    00030000 00030000 0000d000 00000000 rw-
    00030000 00030000 0000d000 00000000 rw- .bss
    0003d000 0003d000 00002b70 00002b70 r--
    0003d000 0003d000 00002b70 00002b70 r-- .rodata
    9cc00000 9cc00000 00001000 00001000 r--
    9cc00000 9cc00000 00001000 00001000 r-- .resource_table
    
    
    SECTION ALLOCATION MAP
    
    output attributes/
    section page origin length input sections
    -------- ---- ---------- ---------- ----------------
    .vectors 0 00000000 00000140
    00000000 00000140 freertos.am62x.m4f.ti-arm-clang.release.lib : HwiP_armv7m_handlers_freertos.obj (.vectors)
    
    .data 0 00000000 00000510 FAILED TO ALLOCATE
    .text 0 00000200 0000c120
    00000200 00000c58 libc.a : _scanfi.c.obj (.text.__TI_scanfi)
    00000e58 00000570 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._vsnprintf)
    000013c8 000004f6 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_open)
    000018be 00000002 ti_board_open_close.obj (.text.Board_driversClose)
    000018c0 000004a8 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._etoa)
    00001d68 00000474 libc.a : strtod.c.obj (.text.strtod)
    000021dc 00000004 ti_board_open_close.obj (.text.Board_driversOpen)
    000021e0 00000438 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._ftoa)
    00002618 000003a4 : HwiP_armv7m.obj (.text.hwi)
    000029bc 00000384 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_init)
    00002d40 0000035a : sciclient.obj (.text.Sciclient_service)
    0000309a 0000033a : mcan.obj (.text.MCAN_msgRAMConfig)
    000033d4 00000288 libc.a : mktime64.c.obj (.text.__mktime64)
    0000365c 00000240 freertos.am62x.m4f.ti-arm-clang.release.lib : timers.obj (.text.prvTimerTask)
    0000389c 0000021e drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_masterIsr)
    00003aba 00000002 ti_board_config.obj (.text.Board_init)
    00003abc 00000206 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_write)
    00003cc2 00000002 freertos.am62x.m4f.ti-arm-clang.release.lib : CacheP_null.obj (.text.CacheP_inv)
    00003cc4 000001fc : queue.obj (.text.xQueueSemaphoreTake)
    00003ec0 000001e8 : queue.obj (.text.xQueueGenericSend)
    000040a8 000001c0 libc.a : strtoll.c.obj (.text.strtoll)
    00004268 000001be freertos.am62x.m4f.ti-arm-clang.release.lib : MpuP_armv7m.obj (.text.mpu)
    00004426 00000002 : CacheP_null.obj (.text.CacheP_wbInv)
    00004428 000001ba : queue.obj (.text.xQueueReceive)
    000045e2 00000002 : ClockP_freertos_m4.obj (.text.ClockP_timerClearOverflowInt)
    000045e4 000001b6 libclang_rt.builtins.a : adddf3.S.obj (.text)
    0000479a 00000002 : aeabi_div0.c.obj (.text.__aeabi_ldiv0)
    0000479c 00000190 libc.a : localtim64.c.obj (.text.__localtime64)
    0000492c 0000018e drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_config)
    00004aba 00000002 libc.a : _lock.c.obj (.text._nop)
    00004abc 0000018c drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_readMsgRam)
    00004c48 00000184 freertos.am62x.m4f.ti-arm-clang.release.lib : TaskP_freertos.obj (.text.TaskP_construct)
    00004dcc 00000180 svcIpc.obj (.text.ipc_rpmsg_create_recv_tasks)
    00004f4c 0000017e drvCanTrnsRcvr.obj (.text.initDrvCanTransRcvr)
    000050ca 0000016a drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_init)
    00005234 0000016a freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.xTaskIncrementTick)
    0000539e 00000160 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_setBitTime)
    000054fe 00000002 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._out_null)
    00005500 0000014c libc.a : strtoull.c.obj (.text.strtoull)
    0000564c 00000148 : strtol.c.obj (.text.strtol)
    00005794 00000146 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_close)
    000058da 00000002 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.vPortConfigTimerForRunTimeStats)
    000058dc 00000144 drivers.am62x.m4f.ti-arm-clang.release.lib : soc.obj (.text.SOC_moduleSetClockFrequency)
    00005a20 00000144 svcCanIf.obj (.text.startSvcCanIfTask)
    00005b64 0000013e freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.xTaskResumeAll)
    00005ca2 00000002 --HOLE-- [fill = 0]
    00005ca4 00000136 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_writeMsgRam)
    00005dda 00000136 : ipc_rpmsg.obj (.text.RPMessage_recv)
    00005f10 00000136 libclang_rt.builtins.a : divdf3.S.obj (.text)
    00006046 00000130 freertos.am62x.m4f.ti-arm-clang.release.lib : ClockP_freertos_m4.obj (.text.ClockP_init)
    00006176 0000012c : queue.obj (.text.xQueueGenericSendFromISR)
    000062a2 00000122 : tasks.obj (.text.vTaskDelete)
    000063c4 00000120 libc.a : memory.c.obj (.text.aligned_alloc)
    000064e4 0000011c freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._ntoa_format)
    00006600 0000011c libc.a : strtoul.c.obj (.text.strtoul)
    0000671c 0000011a freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.prvAddNewTaskToReadyList)
    00006836 00000002 --HOLE-- [fill = 0]
    00006838 00000116 drvCanTrnsRcvr.obj (.text.sendCanData)
    0000694e 0000010c drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_recvHandler)
    00006a5a 00000006 libc.a : _scanfi.c.obj (.text.OUTLINED_FUNCTION_3)
    00006a60 0000010c : s_scalbn.c.obj (.text.scalbn)
    00006b6c 0000010c freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.xQueueGiveFromISR)
    00006c78 00000108 : SysTickTimerP.obj (.text.SysTickTimerP_setup)
    00006d80 00000104 svcIpc.obj (.text.ipc_recv_task_main)
    00006e84 00000100 freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.xQueueReceiveFromISR)
    00006f84 000000fe drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_send)
    00007082 000000fe freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.xQueueGenericCreateStatic)
    00007180 000000fc libclang_rt.builtins.a : muldf3.S.obj (.text)
    0000727c 000000f8 libc.a : memory.c.obj (.text.free)
    00007374 000000f8 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.vTaskSwitchContext)
    0000746c 000000f6 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_init)
    00007562 000000da : mcan.obj (.text.MCAN_lpbkModeEnable)
    0000763c 000000da freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.vTaskPriorityDisinheritAfterTimeout)
    00007716 00000002 --HOLE-- [fill = 0]
    00007718 000000d0 svcCanIf.obj (.text.mcanTxMsgTask)
    000077e8 000000cc drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_isr)
    000078b4 000000cc freertos.am62x.m4f.ti-arm-clang.release.lib : timers.obj (.text.prvSampleTimeNow)
    00007980 000000ca drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_sendMsg)
    00007a4a 000000ca freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.xTaskPriorityDisinherit)
    00007b14 000000c8 drvCanTrnsRcvr.obj (.text.receiveCanData)
    00007bdc 000000c4 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.vTaskStartScheduler)
    00007ca0 000000c2 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.text.RPMessage_vringReset)
    00007d62 00000002 --HOLE-- [fill = 0]
    00007d64 000000c2 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.prvInitialiseNewTask)
    00007e26 000000c2 : tasks.obj (.text.xTaskCreateStatic)
    00007ee8 000000b8 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_divisorLatchWrite)
    00007fa0 000000b6 freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.xQueueGenericCreate)
    00008056 00000002 --HOLE-- [fill = 0]
    00008058 000000b4 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_flushTxFifo)
    0000810c 000000b0 freertos.am62x.m4f.ti-arm-clang.release.lib : AddrTranslateP.obj (.text.AddrTranslateP_init)
    000081bc 000000b0 : DebugP_memTraceLogWriter.obj (.text.DebugP_memLogWriterPutChar)
    0000826c 000000b0 svcCom.obj (.text.svcCommMsgQueueRcvTask)
    0000831c 000000b0 libclang_rt.builtins.a : udivmoddi4.S.obj (.text)
    000083cc 000000ac ti_drivers_config.obj (.text.System_init)
    00008478 000000aa drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_procLineStatusErr)
    00008522 00000002 --HOLE-- [fill = 0]
    00008524 000000a8 freertos.am62x.m4f.ti-arm-clang.release.lib : TaskP_freertos.obj (.text.TaskP_loadUpdateAll)
    000085cc 000000a8 svcCom.obj (.text.startServiceCommTask)
    00008674 000000a8 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.xTaskPriorityInherit)
    0000871c 000000a6 drivers.am62x.m4f.ti-arm-clang.release.lib : pinmux.obj (.text.Pinmux_config)
    000087c2 000000a6 : ipc_rpmsg_vring.obj (.text.RPMessage_vringResetLinux)
    00008868 000000a6 freertos.am62x.m4f.ti-arm-clang.release.lib : HwiP_armv7m_handlers_freertos.obj (.text.hwi)
    0000890e 000000a4 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_calcMsgRamParamsStartAddr)
    000089b2 000000a4 : ipc_rpmsg_vring.obj (.text.RPMessage_vringGetFullRxBuf)
    00008a56 00000002 --HOLE-- [fill = 0]
    00008a58 000000a4 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._ntoa_long_long)
    00008afc 000000a4 : printf.obj (.text._out_rev)
    00008ba0 000000a4 : tasks.obj (.text.xTaskRemoveFromEventList)
    00008c44 000000a2 svcCanIf.obj (.text.updateTxCanElement)
    00008ce6 000000a0 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.eTaskGetState)
    00008d86 000000a0 : tasks.obj (.text.prvAddCurrentTaskToDelayedList)
    00008e26 0000009e drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.text.RPMessage_vringPutEmptyRxBuf)
    00008ec4 0000009e : sciclient_pm.obj (.text.Sciclient_pmQueryModuleClkFreq)
    00008f62 0000009e freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.xTaskCheckForTimeOut)
    00009000 0000009a drivers.am62x.m4f.ti-arm-clang.release.lib : sciclient.obj (.text.Sciclient_init)
    0000909a 00000002 --HOLE-- [fill = 0]
    0000909c 0000009a : sciclient.obj (.text.Sciclient_sendMessage)
    00009136 00000002 --HOLE-- [fill = 0]
    00009138 0000009a svcCanIf.obj (.text.mcanRxMsgTask)
    000091d2 00000002 --HOLE-- [fill = 0]
    000091d4 00000098 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_coreInit)
    0000926c 00000096 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.vTaskGetInfo)
    00009302 00000002 --HOLE-- [fill = 0]
    00009304 00000094 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_init)
    00009398 00000094 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._ntoa_long)
    0000942c 00000092 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.text.RPMessage_vringGetEmptyTxBuf)
    000094be 00000092 freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.xQueueGenericReset)
    00009550 00000090 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.text.RPMessage_vringResetInternal)
    000095e0 00000090 drvCanTrnsRcvr.obj (.text.initMcanTxElementDefault)
    00009670 0000008c drivers.am62x.m4f.ti-arm-clang.release.lib : sciclient_pm.obj (.text.Sciclient_pmSetModuleClkFreq)
    000096fc 00000088 freertos.am62x.m4f.ti-arm-clang.release.lib : DebugP_memTraceLogWriter.obj (.text.DebugP_memTraceLogWriterPutLine)
    00009784 00000086 : timers.obj (.text.xTimerCreateTimerTask)
    0000980a 00000082 main.obj (.text.main)
    0000988c 0000007e drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_waitForLinuxReady)
    0000990a 0000007e svcCanIf.obj (.text.updateTxCanElement_SBD)
    00009988 0000007a drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.text.RPMessage_vringPutFullTxBuf)
    00009a02 0000007a : sciclient_pm.obj (.text.Sciclient_pmGetModuleClkNumParent)
    00009a7c 0000007a freertos.am62x.m4f.ti-arm-clang.release.lib : timers.obj (.text.prvCheckForValidListAndQueue)
    00009af6 0000007a : port.obj (.text.xPortStartScheduler)
    00009b70 00000078 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_writeRxFIFOAck)
    00009be8 00000078 : ipc_rpmsg.obj (.text.RPMessage_construct)
    00009c60 00000078 libc.a : sscanf.c.obj (.text._chkmbc)
    00009cd8 00000078 freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.prvCopyDataToQueue)
    00009d50 00000078 : timers.obj (.text.xTimerGenericCommand)
    00009dc8 00000076 : DebugP_freertos.obj (.text._DebugP_logZone)
    00009e3e 00000072 drivers.am62x.m4f.ti-arm-clang.release.lib : soc.obj (.text.SOC_moduleClockEnable)
    00009eb0 00000072 freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.prvUnlockQueue)
    00009f22 00000070 : SemaphoreP_freertos.obj (.text.SemaphoreP_constructBinary)
    00009f92 00000002 --HOLE-- [fill = 0]
    00009f94 00000070 : tasks.obj (.text.prvIdleTask)
    0000a004 0000006e drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_getEndPtMsg)
    0000a072 0000006e : sciclient_pm.obj (.text.Sciclient_pmGetModuleState)
    0000a0e0 0000006e libclang_rt.builtins.a : comparedf2.c.obj (.text.__gedf2)
    0000a14e 00000002 --HOLE-- [fill = 0]
    0000a150 0000006e : comparedf2.c.obj (.text.__ledf2)
    0000a1be 00000002 --HOLE-- [fill = 0]
    0000a1c0 0000006e : truncdfsf2.S.obj (.text)
    0000a22e 0000006c drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_getErrCounters)
    0000a29a 00000002 --HOLE-- [fill = 0]
    0000a29c 0000006c libc.a : memory.c.obj (.text.split)
    0000a308 0000006a freertos.am62x.m4f.ti-arm-clang.release.lib : AddrTranslateP.obj (.text.AddrTranslateP_getLocalAddr)
    0000a372 0000006a : tasks.obj (.text.vTaskDelay)
    0000a3dc 00000068 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_notifyCallback)
    0000a444 00000068 : uart_v0.obj (.text.UART_writeCancelNoCB)
    0000a4ac 00000066 : mcan.obj (.text.MCAN_setExtIDAndMask)
    0000a512 00000066 : sciclient_pm.obj (.text.Sciclient_pmGetModuleClkFreq)
    0000a578 00000066 : sciclient_pm.obj (.text.Sciclient_pmGetModuleClkParent)
    0000a5de 00000066 freertos.am62x.m4f.ti-arm-clang.release.lib : SemaphoreP_freertos.obj (.text.SemaphoreP_pend)
    0000a644 00000066 : SemaphoreP_freertos.obj (.text.SemaphoreP_post)
    0000a6aa 00000002 --HOLE-- [fill = 0]
    0000a6ac 00000064 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_waitSync)
    0000a710 00000064 : sciclient_pm.obj (.text.Sciclient_pmModuleGetClkStatus)
    0000a774 00000064 freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.vQueueDelete)
    0000a7d8 00000008 libc.a : _scanfi.c.obj (.text.OUTLINED_FUNCTION_0)
    0000a7e0 00000064 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.xPortPendSVHandler)
    0000a844 00000062 libclang_rt.builtins.a : aeabi_dcmp.S.obj (.text)
    0000a8a6 00000002 --HOLE-- [fill = 0]
    0000a8a8 00000060 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_syncAll)
    0000a908 00000060 mcu_main.obj (.text.ipcsvc_rpmsg_main)
    0000a968 0000005e drivers.am62x.m4f.ti-arm-clang.release.lib : sciclient_pm.obj (.text.Sciclient_pmSetModuleClkParent)
    0000a9c6 00000002 --HOLE-- [fill = 0]
    0000a9c8 0000005e freertos.am62x.m4f.ti-arm-clang.release.lib : DebugP_log.obj (.text._DebugP_assert)
    0000aa26 0000005e : port.obj (.text.vPortEnterCritical)
    0000aa84 0000005c drivers.am62x.m4f.ti-arm-clang.release.lib : sciclient_pm.obj (.text.Sciclient_pmModuleClkRequest)
    0000aae0 0000005c libclang_rt.builtins.a : divmoddi4.c.obj (.text.__divmoddi4)
    0000ab3c 0000005a drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.text.RPMessage_vringIsFullRxBuf)
    0000ab96 00000058 : mcan.obj (.text.MCAN_getProtocolStatus)
    0000abee 00000058 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.vTaskPlaceOnEventListRestricted)
    0000ac46 00000058 : boot_armv7m.obj (.text:_c_int00)
    0000ac9e 00000056 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_dma.obj (.text.UART_dmaDisableChannel)
    0000acf4 00000056 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.prvTaskExitError)
    0000ad4a 00000054 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_dma.obj (.text.UART_dmaClose)
    0000ad9e 00000054 svcCom.obj (.text.sendMsgToQueue)
    0000adf2 00000052 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_getRxFIFOStatus)
    0000ae44 00000052 : ipc_rpmsg.obj (.text.RPMessage_announce)
    0000ae96 00000052 : sciclient_pm.obj (.text.Sciclient_pmSetModuleState)
    0000aee8 00000052 freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.xQueueGiveMutexRecursive)
    0000af3a 00000050 ti_dpl_config.obj (.text.Dpl_init)
    0000af8a 00000050 freertos.am62x.m4f.ti-arm-clang.release.lib : SemaphoreP_freertos.obj (.text.SemaphoreP_constructMutex)
    0000afda 00000050 : tasks.obj (.text.prvDeleteTCB)
    0000b02a 00000050 : queue.obj (.text.xQueueTakeMutexRecursive)
    0000b07a 0000004e drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.text.RPMessage_vringGetSize)
    0000b0c8 0000004e freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.vTaskPlaceOnEventList)
    0000b116 00000002 --HOLE-- [fill = 0]
    0000b118 0000004c : ClockP_freertos.obj (.text.ClockP_getTimeUsec)
    0000b164 0000004c ti_drivers_open_close.obj (.text.Drivers_uartOpen)
    0000b1b0 0000004c drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_allocEndPtMsg)
    0000b1fc 0000004c msgque.obj (.text.sendQueue)
    0000b248 00000048 libc.a : atoi.c.obj (.text.atoi)
    0000b290 00000048 libclang_rt.builtins.a : fixdfsi.S.obj (.text)
    0000b2d8 00000046 freertos.am62x.m4f.ti-arm-clang.release.lib : queue.obj (.text.vQueueWaitForMessageRestricted)
    0000b31e 00000002 --HOLE-- [fill = 0]
    0000b320 00000044 libsysbm.a : hosttime.c.obj (.text.HOSTtime64)
    0000b364 00000044 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_addExtMsgIDFilter)
    0000b3a8 00000044 : sciclient_pm.obj (.text.Sciclient_pmSetModuleRst)
    0000b3ec 00000044 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.vPortExitCritical)
    0000b430 00000044 libclang_rt.builtins.a : fixunsdfsi.S.obj (.text)
    0000b474 00000042 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_txBufAddReq)
    0000b4b6 00000040 freertos.am62x.m4f.ti-arm-clang.release.lib : timers.obj (.text.prvInsertTimerInActiveList)
    0000b4f6 0000003e drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_registerClient)
    0000b534 0000003e freertos.am62x.m4f.ti-arm-clang.release.lib : TaskP_freertos.obj (.text.vApplicationLoadHook)
    0000b572 0000003e : port.obj (.text.vPortTimerTickHandler)
    0000b5b0 0000003e : tasks.obj (.text.xTaskGetIdleTaskHandle)
    0000b5ee 0000003c drivers.am62x.m4f.ti-arm-clang.release.lib : uart_dma.obj (.text.UART_dmaOpen)
    0000b62a 0000003a freertos.am62x.m4f.ti-arm-clang.release.lib : DebugP_uartLogWriter.obj (.text.DebugP_uartLogWriterPutChar)
    0000b664 0000003a : list.obj (.text.vListInsert)
    0000b69e 00000002 --HOLE-- [fill = 0]
    0000b6a0 00000038 ti_power_clock_config.obj (.text.Module_clockSetFrequency)
    0000b6d8 00000038 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.text.RPMessage_vringCheckEmptyTxBuf)
    0000b710 00000038 : sciclient.obj (.text.Sciclient_getCurrentContext)
    0000b748 00000038 msgque.obj (.text.createQueue)
    0000b780 00000038 libc.a : autoinit.c.obj (.text:__TI_auto_init_nobinit_nopinit)
    0000b7b8 00000036 freertos.am62x.m4f.ti-arm-clang.release.lib : ClockP_freertos.obj (.text.ClockP_usleep)
    0000b7ee 00000036 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_initOperModeParams)
    0000b824 00000034 libsysbm.a : trgmsg.c.obj (.text.__TI_writemsg)
    0000b858 00000032 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_getOffsetAddr)
    0000b88a 00000032 : mcan.obj (.text.MCAN_initMsgRamConfigParams)
    0000b8bc 00000032 : mcan.obj (.text.MCAN_initTxBufElement)
    0000b8ee 00000032 msgque.obj (.text.rcvQueue)
    0000b920 00000032 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text.snprintf_)
    0000b952 00000030 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_getTxFIFOQueStatus)
    0000b982 00000002 --HOLE-- [fill = 0]
    0000b984 00000030 libsysbm.a : trgmsg.c.obj (.text.__TI_readmsg)
    0000b9b4 00000030 libclang_rt.builtins.a : comparedf2.c.obj (.text.__unorddf2)
    0000b9e4 00000030 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.prvPortStartFirstTask)
    0000ba14 00000030 libc.a : sscanf.c.obj (.text.sscanf)
    0000ba44 00000030 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.vApplicationStackOverflowHook)
    0000ba74 00000030 : queue.obj (.text.xQueueCreateMutexStatic)
    0000baa4 0000002e : ClockP_freertos.obj (.text.ClockP_timerTickIsr)
    0000bad2 00000002 --HOLE-- [fill = 0]
    0000bad4 0000002e ti_power_clock_config.obj (.text.Module_clockEnable)
    0000bb02 0000002e drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.text.UART_getHandle)
    0000bb30 0000002e libclang_rt.builtins.a : floatsidf.S.obj (.text)
    0000bb5e 0000002a drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_initSetBitTimeParams)
    0000bb88 00000028 : ipc_rpmsg.obj (.text.RPMessage_Params_init)
    0000bbb0 00000028 libc.a : memory.c.obj (.text.free_list_insert)
    0000bbd8 00000028 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.pxPortInitialiseStack)
    0000bc00 00000028 : queue.obj (.text.vQueueAddToRegistry)
    0000bc28 00000028 : queue.obj (.text.xQueueCreateMutex)
    0000bc50 00000026 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_controlEndPtHandler)
    0000bc76 00000026 : sciclient_soc_priv.obj (.text.Sciclient_getContext)
    0000bc9c 00000024 : mcan.obj (.text.MCAN_initGlobalFilterConfigParams)
    0000bcc0 00000024 freertos.am62x.m4f.ti-arm-clang.release.lib : list.obj (.text.uxListRemove)
    0000bce4 0000000c : DebugP_uartLogWriter.obj (.text.DebugP_uartSetDrvIndex)
    0000bcf0 00000024 : port.obj (.text.vPortSVCHandler)
    0000bd14 00000024 : printf.obj (.text.vprintf_)
    0000bd38 00000024 : tasks.obj (.text.xTaskGetSchedulerState)
    0000bd5c 00000022 ti_pinmux_config.obj (.text.Pinmux_init)
    0000bd7e 00000022 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_isLinuxCore)
    0000bda0 00000022 svcCanIf.obj (.text.getSeatBeltDetectionState)
    0000bdc2 00000020 freertos.am62x.m4f.ti-arm-clang.release.lib : DebugP_log.obj (.text.DebugP_logZoneEnable)
    0000bde2 00000020 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_setOpMode)
    0000be02 00000002 --HOLE-- [fill = 0]
    0000be04 00000020 libclang_rt.builtins.a : floatunsidf.S.obj (.text)
    0000be24 0000001e drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_syncCallback)
    0000be42 0000001e freertos.am62x.m4f.ti-arm-clang.release.lib : SysTickTimerP.obj (.text.SysTickTimerP_Params_init)
    0000be60 0000001e : DebugP_log.obj (.text._DebugP_assertNoLog)
    0000be7e 0000001c drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.text.MCAN_getOpMode)
    0000be9a 0000001c : mcan.obj (.text.MCAN_isMemInitDone)
    0000beb6 0000001c : ipc_rpmsg_vring.obj (.text.RPMessage_vringGetTxBufLen)
    0000bed2 0000001c : soc.obj (.text.SOC_getCoreName)
    0000beee 00000002 --HOLE-- [fill = 0]
    0000bef0 0000001c libc.a : memory.c.obj (.text.free_list_remove)
    0000bf0c 0000001c freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.vApplicationGetIdleTaskMemory)
    0000bf28 0000001c : port.obj (.text.vApplicationGetTimerTaskMemory)
    0000bf44 0000001c : list.obj (.text.vListInsertEnd)
    0000bf60 0000001a drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_Params_init)
    0000bf7a 0000001a : ipc_rpmsg_vring.obj (.text.RPMessage_vringGetRxBufAddr)
    0000bf94 0000001a : ipc_rpmsg_vring.obj (.text.RPMessage_vringGetTxBufAddr)
    0000bfae 0000001a freertos.am62x.m4f.ti-arm-clang.release.lib : TaskP_freertos.obj (.text.TaskP_Params_init)
    0000bfc8 0000001a drivers.am62x.m4f.ti-arm-clang.release.lib : uart_dma.obj (.text.UART_writeInterruptDma)
    0000bfe2 0000001a freertos.am62x.m4f.ti-arm-clang.release.lib : heap_3.obj (.text.vPortFree)
    0000bffc 0000001a : tasks.obj (.text.vTaskInternalSetTimeOutState)
    0000c016 00000018 ti_drivers_config.obj (.text.IpcNotify_getConfig)
    0000c02e 00000018 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_isCoreEnabled)
    0000c046 00000018 : mcan.obj (.text.MCAN_getTxBufTransmissionStatus)
    0000c05e 00000018 freertos.am62x.m4f.ti-arm-clang.release.lib : TaskP_freertos.obj (.text.TaskP_yield)
    0000c076 00000018 : heap_3.obj (.text.pvPortMalloc)
    0000c08e 00000018 : tasks.obj (.text.pvTaskIncrementMutexHeldCount)
    0000c0a6 00000016 : HwiP_armv7m.obj (.text.HwiP_inISR)
    0000c0bc 00000016 drivers.am62x.m4f.ti-arm-clang.release.lib : sciclient_soc_priv.obj (.text.Sciclient_getDevId)
    0000c0d2 00000016 freertos.am62x.m4f.ti-arm-clang.release.lib : list.obj (.text.vListInitialise)
    0000c0e8 00000014 : ClockP_freertos.obj (.text.ClockP_usecToTicks)
    0000c0fc 00000014 libc.a : sscanf.c.obj (.text._inpchar)
    0000c110 00000014 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.vPortEnableVFP)
    0000c124 00000014 libclang_rt.builtins.a : aeabi_ldivmod.S.obj (.text)
    0000c138 00000014 : aeabi_memset.S.obj (.text)
    0000c14c 00000014 : aeabi_uldivmod.S.obj (.text)
    0000c160 00000012 freertos.am62x.m4f.ti-arm-clang.release.lib : DebugP_memTraceLogWriter.obj (.text.DebugP_memLogWriterInit)
    0000c172 00000012 : SysTickTimerP.obj (.text.SysTickTimerP_start)
    0000c184 00000012 main.obj (.text.freertos_main)
    0000c196 00000012 ti_dpl_config.obj (.text.putchar_)
    0000c1a8 00000012 libc.a : memcpy_t2.S.obj (.text:TI_memcpy_small)
    0000c1ba 00000010 freertos.am62x.m4f.ti-arm-clang.release.lib : ClockP_freertos.obj (.text.ClockP_ticksToUsec)
    0000c1ca 00000010 libc.a : strtoll.c.obj (.text.OUTLINED_FUNCTION_0)
    0000c1da 00000010 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_CreateParams_init)
    0000c1ea 00000010 libsysbm.a : time64.c.obj (.text.__time64)
    0000c1fa 00000010 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.vTaskSuspendAll)
    0000c20a 0000000e libc.a : strtoull.c.obj (.text.OUTLINED_FUNCTION_0)
    0000c218 0000000e : _scanfi.c.obj (.text.OUTLINED_FUNCTION_2)
    0000c226 0000000e ti_power_clock_config.obj (.text.PowerClock_init)
    0000c234 0000000e freertos.am62x.m4f.ti-arm-clang.release.lib : SysTickTimerP.obj (.text.SysTickTimerP_getCount)
    0000c242 0000000e : SysTickTimerP.obj (.text.SysTickTimerP_getReloadCount)
    0000c250 0000000e : tasks.obj (.text.vTaskMissedYield)
    0000c25e 0000000e libc.a : memset_t2.S.obj (.text:TI_memset_small)
    0000c26c 0000000c drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.text.IpcNotify_getSelfCoreId)
    0000c278 0000000c freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.text.xTaskGetCurrentTaskHandle)
    0000c284 0000000c : tasks.obj (.text.xTaskGetTickCount)
    0000c290 0000000a : AddrTranslateP.obj (.text.AddrTranslateP_Params_init)
    0000c29a 0000000a drivers.am62x.m4f.ti-arm-clang.release.lib : csl_sec_proxy.obj (.text.CSL_secProxyGetDataAddr)
    0000c2a4 0000000a freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._out_char)
    0000c2ae 0000000a : port.obj (.text.vApplicationIdleHook)
    0000c2b8 00000008 libc.a : strtod.c.obj (.text.OUTLINED_FUNCTION_0)
    0000c2c0 00000008 : _scanfi.c.obj (.text.OUTLINED_FUNCTION_1)
    0000c2c8 00000008 : aeabi_portable.c.obj (.text.__aeabi_errno_addr)
    0000c2d0 00000008 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.text._out_buffer)
    0000c2d8 00000008 libc.a : sscanf.c.obj (.text._uninpchar)
    0000c2e0 00000008 : memory.c.obj (.text.malloc)
    0000c2e8 00000008 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.text.uiPortGetRunTimeCounterValue)
    0000c2f0 00000006 : SemaphoreP_freertos.obj (.text.SemaphoreP_destruct)
    0000c2f6 00000006 : list.obj (.text.vListInitialiseItem)
    0000c2fc 00000004 : ClockP_freertos.obj (.text.ClockP_getTicks)
    0000c300 00000004 : ClockP_freertos_m4.obj (.text.ClockP_getTimerCount)
    0000c304 00000004 ti_drivers_open_close.obj (.text.Drivers_open)
    0000c308 00000004 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.text.RPMessage_getLocalEndPt)
    0000c30c 00000004 ti_dpl_config.obj (.text.boot)
    0000c310 00000004 libc.a : exit.c.obj (.text:abort)
    0000c314 00000004 libclang_rt.builtins.a : aeabi_memcpy.S.obj (.text)
    0000c318 00000008 --HOLE-- [fill = 0]
    
    .sysmem 0 0000c320 00008000 UNINITIALIZED
    0000c320 00000010 libc.a : memory.c.obj (.sysmem)
    0000c330 00007ff0 --HOLE--
    
    .stack 0 00014320 00004000 UNINITIALIZED
    00014320 00000004 freertos.am62x.m4f.ti-arm-clang.release.lib : boot_armv7m.obj (.stack)
    00014324 00003ffc --HOLE--
    
    .bss 0 00030000 0000d000 UNINITIALIZED
    00030000 00004000 (.common:gIpcTaskStack)
    00034000 00004000 (.common:gMainTaskStack)
    00038000 00001000 ti_dpl_config.obj (.bss.debug_mem_trace_buf)
    00039000 00001000 freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.bss.uxIdleTaskStack)
    0003a000 00000b2c (.common:gIpcRpmsgCtrl)
    0003ab2c 00000014 : timers.obj (.bss.xActiveTimerList1)
    0003ab40 00000800 (.common:g_McanTaskStack)
    0003b340 00000400 : port.obj (.bss.uxTimerTaskStack)
    0003b740 00000400 (.common:g_IpcMsgQueTaskStack)
    0003bb40 00000280 ti_drivers_config.obj (.bss.gUartObjects)
    0003bdc0 00000280 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.bss.pxReadyTasksLists)
    0003c040 00000280 (.common:gHwiCtrl)
    0003c2c0 00000180 (.common:gIpcRecvMsgObject)
    0003c440 00000140 (.common:gIpcTask)
    0003c580 00000140 (.common:g_taskobjMcanTask)
    0003c6c0 00000120 libsysbm.a : trgmsg.c.obj (.bss:_CIOBUF_)
    0003c7e0 00000100 freertos.am62x.m4f.ti-arm-clang.release.lib : timers.obj (.bss.prvCheckForValidListAndQueue.ucStaticTimerQueueStorage)
    0003c8e0 00000100 (.common:xQueueRegistry)
    0003c9e0 000000a8 (.common:gIpcNotifyCtrl)
    0003ca88 000000a0 (.common:g_IpcMsgQueRcvTask)
    0003cb28 00000098 : DebugP_freertos.obj (.bss.gDebugLogLockObj)
    0003cbc0 00000088 : port.obj (.bss.xIdleTaskTCB)
    0003cc48 00000088 : port.obj (.bss.xTimerTaskTCB)
    0003ccd0 00000088 (.common:gMainTaskObj)
    0003cd58 0000007a : DebugP_memTraceLogWriter.obj (.bss.DebugP_memLogWriterPutChar.lineBuf)
    0003cdd2 00000002 --HOLE--
    0003cdd4 00000004 drvCanTrnsRcvr.obj (.bss.g_McanBaseAddr)
    0003cdd8 00000060 (.common:gTaskP_ctrl)
    0003ce38 00000050 freertos.am62x.m4f.ti-arm-clang.release.lib : timers.obj (.bss.prvCheckForValidListAndQueue.xStaticTimerQueue)
    0003ce88 00000050 (.common:gRovDummyQueue)
    0003ced8 00000038 (.common:gClockCtrl)
    0003cf10 00000014 : timers.obj (.bss.xActiveTimerList2)
    0003cf24 00000014 : tasks.obj (.bss.xDelayedTaskList1)
    0003cf38 00000014 : tasks.obj (.bss.xDelayedTaskList2)
    0003cf4c 00000014 : tasks.obj (.bss.xPendingReadyList)
    0003cf60 00000014 : tasks.obj (.bss.xSuspendedTaskList)
    0003cf74 00000014 : tasks.obj (.bss.xTasksWaitingTermination)
    0003cf88 00000008 (.common:g_dmsFeatureData)
    0003cf90 00000008 (.common:parmbuf)
    0003cf98 00000004 : timers.obj (.bss.pxCurrentTimerList)
    0003cf9c 00000004 : tasks.obj (.bss.pxDelayedTaskList)
    0003cfa0 00000004 : tasks.obj (.bss.pxOverflowDelayedTaskList)
    0003cfa4 00000004 : timers.obj (.bss.pxOverflowTimerList)
    0003cfa8 00000004 libc.a : memory.c.obj (.bss.sys_free)
    0003cfac 00000004 (.common:gMainTask)
    0003cfb0 00000004 (.common:gUartHandle)
    0003cfb4 0000004c --HOLE--
    
    .rodata 0 0003d000 00002b70
    0003d000 000007ee freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.rodata.str1.1)
    0003d7ee 00000756 : queue.obj (.rodata.str1.1)
    0003df44 0000031a drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg.obj (.rodata.str1.1)
    0003e25e 000002bc freertos.am62x.m4f.ti-arm-clang.release.lib : timers.obj (.rodata.str1.1)
    0003e51a 0000022c msgque.obj (.rodata.str1.1)
    0003e746 00000209 svcCanIf.obj (.rodata.str1.1)
    0003e94f 000001ad freertos.am62x.m4f.ti-arm-clang.release.lib : port.obj (.rodata.str1.1)
    0003eafc 00000196 drvCanTrnsRcvr.obj (.rodata.str1.1)
    0003ec92 0000017d drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_notify_v0.obj (.rodata.str1.1)
    0003ee0f 00000163 freertos.am62x.m4f.ti-arm-clang.release.lib : TaskP_freertos.obj (.rodata.str1.1)
    0003ef72 00000135 drivers.am62x.m4f.ti-arm-clang.release.lib : uart_v0.obj (.rodata.str1.1)
    0003f0a7 00000112 svcCom.obj (.rodata.str1.1)
    0003f1b9 0000010a freertos.am62x.m4f.ti-arm-clang.release.lib : ClockP_freertos_m4.obj (.rodata.str1.1)
    0003f2c3 0000000d libc.a : _scanfi.c.obj (.rodata.str1.1)
    0003f2d0 00000101 : aeabi_ctype.S.obj (.rodata)
    0003f3d1 00000003 --HOLE-- [fill = 0]
    0003f3d4 000000dc drivers.am62x.m4f.ti-arm-clang.release.lib : sciclient_fmwSecureProxyMap.obj (.rodata.gSciclientMap)
    0003f4b0 000000da freertos.am62x.m4f.ti-arm-clang.release.lib : SemaphoreP_freertos.obj (.rodata.str1.1)
    0003f58a 000000cf svcIpc.obj (.rodata.str1.1)
    0003f659 000000a9 freertos.am62x.m4f.ti-arm-clang.release.lib : SysTickTimerP.obj (.rodata.str1.1)
    0003f702 00000006 libc.a : _scanfi.c.obj (.rodata._sproc_int.barr)
    0003f708 00000080 : strtod.c.obj (.rodata.digits)
    0003f788 00000050 freertos.am62x.m4f.ti-arm-clang.release.lib : printf.obj (.rodata._ftoa.pow10)
    0003f7d8 00000050 drivers.am62x.m4f.ti-arm-clang.release.lib : ipc_rpmsg_vring.obj (.rodata.str1.1)
    0003f828 0000004b : uart_dma.obj (.rodata.str1.1)
    0003f873 00000001 --HOLE-- [fill = 0]
    0003f874 00000004 freertos.am62x.m4f.ti-arm-clang.release.lib : tasks.obj (.rodata.uxTopUsedPriority)
    0003f878 00000048 libc.a : strtod.c.obj (.rodata.powerof10)
    0003f8c0 00000046 ti_drivers_open_close.obj (.rodata.str1.1)
    0003f906 00000042 ti_drivers_config.obj (.rodata.str1.1)
    0003f948 00000041 main.obj (.rodata.str1.1)
    0003f989 00000003 --HOLE-- [fill = 0]
    0003f98c 00000040 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.rodata.gDataSize)
    0003f9cc 0000003e mcu_main.obj (.rodata.str1.1)
    0003fa0a 0000003d drivers.am62x.m4f.ti-arm-clang.release.lib : soc.obj (.rodata.str1.1)
    0003fa47 00000001 --HOLE-- [fill = 0]
    0003fa48 00000030 libc.a : mktime64.c.obj (.rodata.mon_day)
    0003fa78 00000030 : mktime64.c.obj (.rodata.mon_len)
    0003faa8 0000002d freertos.am62x.m4f.ti-arm-clang.release.lib : DebugP_log.obj (.rodata.str1.1)
    0003fad5 00000003 --HOLE-- [fill = 0]
    0003fad8 00000020 drivers.am62x.m4f.ti-arm-clang.release.lib : soc.obj (.rodata.SOC_getCoreName.coreIdNames)
    0003faf8 00000020 : mcan.obj (.rodata.cst32)
    0003fb18 0000001b freertos.am62x.m4f.ti-arm-clang.release.lib : DebugP_memTraceLogWriter.obj (.rodata.str1.1)
    0003fb33 00000012 : printf.obj (.rodata.str1.1)
    0003fb45 00000003 --HOLE-- [fill = 0]
    0003fb48 0000000c drivers.am62x.m4f.ti-arm-clang.release.lib : sciclient_soc_priv.obj (.rodata..Lswitch.table.Sciclient_getDevId)
    0003fb54 00000008 libc.a : _scanfi.c.obj (.rodata..L__const._sproc_float.special)
    0003fb5c 00000008 drivers.am62x.m4f.ti-arm-clang.release.lib : mcan.obj (.rodata.gMcanOffsetAddr)
    0003fb64 00000007 libc.a : _scanfi.c.obj (.rodata._sproc_int.flit)
    0003fb6b 00000005 --HOLE-- [fill = 0]
    
    .resource_table
    * 0 9cc00000 00001000
    9cc00000 0000008c ti_drivers_config.obj (.resource_table)
    9cc0008c 00000f74 --HOLE-- [fill = 0]
    
    .init_array
    * 0 00000200 00000000 UNINITIALIZED
    
    __llvm_prf_cnts
    * 0 00030000 00000000 UNINITIALIZED
    
    __llvm_prf_bits
    * 0 00030000 00000000 UNINITIALIZED
    
    MODULE SUMMARY
    
    Module code ro data rw data
    ------ ---- ------- -------
    obj/release/
    svcIpc.obj 644 207 17088
    main.obj 148 65 16524
    ti_dpl_config.obj 102 0 4096
    svcCanIf.obj 1008 521 2368
    svcCom.obj 428 274 1192
    drvCanTrnsRcvr.obj 1004 406 4
    ti_drivers_config.obj 196 206 640
    msgque.obj 182 556 0
    mcu_main.obj 96 62 0
    ti_drivers_open_close.obj 80 70 4
    ti_power_clock_config.obj 116 0 0
    ti_pinmux_config.obj 34 0 0
    ti_board_open_close.obj 6 0 0
    ti_board_config.obj 2 0 0
    +--+-----------------------------------+-------+---------+---------+
    Total: 4046 2367 41916
    
    /home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/../ti-cgt-armllvm_2.1.1.LTS/lib/armv7em-ti-none-eabihf/c/libc.a
    _scanfi.c.obj 3196 34 0
    strtod.c.obj 1148 200 0
    mktime64.c.obj 648 96 0
    memory.c.obj 720 0 4
    strtoll.c.obj 464 0 0
    localtim64.c.obj 400 0 0
    strtoull.c.obj 346 0 0
    strtol.c.obj 328 0 0
    strtoul.c.obj 284 0 0
    s_scalbn.c.obj 268 0 0
    aeabi_ctype.S.obj 0 257 0
    sscanf.c.obj 196 0 0
    atoi.c.obj 72 0 0
    autoinit.c.obj 56 0 0
    memcpy_t2.S.obj 18 0 0
    memset_t2.S.obj 14 0 0
    aeabi_portable.c.obj 8 0 0
    exit.c.obj 4 0 0
    _lock.c.obj 2 0 0
    +--+-----------------------------------+-------+---------+---------+
    Total: 8172 587 4
    
    /home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/../ti-cgt-armllvm_2.1.1.LTS/lib/armv7em-ti-none-eabihf/c/libsysbm.a
    trgmsg.c.obj 100 0 288
    hosttime.c.obj 68 0 0
    time64.c.obj 16 0 0
    hostopen.c.obj 0 0 8
    +--+-----------------------------------+-------+---------+---------+
    Total: 184 0 296
    
    /home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/../ti-cgt-armllvm_2.1.1.LTS/lib/clang/14.0.6/lib/armv7em-ti-none-eabihf/libclang_rt.builtins.a
    adddf3.S.obj 438 0 0
    divdf3.S.obj 310 0 0
    comparedf2.c.obj 268 0 0
    muldf3.S.obj 252 0 0
    udivmoddi4.S.obj 176 0 0
    truncdfsf2.S.obj 110 0 0
    aeabi_dcmp.S.obj 98 0 0
    divmoddi4.c.obj 92 0 0
    fixdfsi.S.obj 72 0 0
    fixunsdfsi.S.obj 68 0 0
    floatsidf.S.obj 46 0 0
    floatunsidf.S.obj 32 0 0
    aeabi_ldivmod.S.obj 20 0 0
    aeabi_memset.S.obj 20 0 0
    aeabi_uldivmod.S.obj 20 0 0
    aeabi_memcpy.S.obj 4 0 0
    aeabi_div0.c.obj 2 0 0
    +--+-----------------------------------+-------+---------+---------+
    Total: 2028 0 0
    
    /home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/source/drivers/lib/drivers.am62x.m4f.ti-arm-clang.release.lib
    ipc_rpmsg.obj 1980 794 2860
    mcan.obj 4102 104 0
    uart_v0.obj 3488 309 0
    ipc_notify_v0.obj 1656 381 168
    ipc_rpmsg_vring.obj 1398 80 0
    sciclient.obj 1222 0 0
    sciclient_pm.obj 1170 0 0
    soc.obj 466 93 0
    uart_dma.obj 256 75 0
    sciclient_fmwSecureProxyMap.obj 0 220 0
    pinmux.obj 166 0 0
    sciclient_soc_priv.obj 60 12 0
    csl_sec_proxy.obj 10 0 0
    +--+-----------------------------------+-------+---------+---------+
    Total: 15974 2068 3028
    
    /home/vpalanisamy/workspace/adas/compute/sitara/mcu_sdk/mcu_plus_sdk_am62x_08_04_00_16/source/kernel/freertos/lib/freertos.am62x.m4f.ti-arm-clang.release.lib
    tasks.obj 4130 2034 748
    port.obj 800 429 5392
    queue.obj 3538 1878 256
    printf.obj 4530 98 0
    timers.obj 1220 700 384
    HwiP_armv7m.obj 954 0 640
    TaskP_freertos.obj 668 355 96
    SemaphoreP_freertos.obj 402 218 80
    ClockP_freertos_m4.obj 310 266 0
    SysTickTimerP.obj 340 169 0
    HwiP_armv7m_handlers_freertos.obj 166 0 320
    DebugP_memTraceLogWriter.obj 330 27 122
    MpuP_armv7m.obj 446 0 0
    AddrTranslateP.obj 292 0 0
    ClockP_freertos.obj 216 0 56
    DebugP_freertos.obj 118 0 152
    DebugP_log.obj 156 45 0
    list.obj 150 0 0
    boot_armv7m.obj 88 0 0
    DebugP_uartLogWriter.obj 70 0 0
    heap_3.obj 50 0 0
    CacheP_null.obj 4 0 0
    +--+-----------------------------------+-------+---------+---------+
    Total: 18978 6219 8246
    
    Heap: 0 0 32768
    Stack: 0 0 16384
    +--+-----------------------------------+-------+---------+---------+
    Grand Total: 49382 11241 102642
    
    
    GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name
    
    address name
    ------- ----
    0000c291 AddrTranslateP_Params_init
    0000a309 AddrTranslateP_getLocalAddr
    0000810d AddrTranslateP_init
    000018bf Board_driversClose
    000021dd Board_driversOpen
    00003abb Board_init
    0000c310 C$$EXIT
    0000b84f C$$IO$$
    0000c29b CSL_secProxyGetDataAddr
    00003cc3 CacheP_inv
    00004427 CacheP_wbInv
    0000c2fd ClockP_getTicks
    0000b119 ClockP_getTimeUsec
    0000c301 ClockP_getTimerCount
    00006047 ClockP_init
    0000c1bb ClockP_ticksToUsec
    000045e3 ClockP_timerClearOverflowInt
    0000baa5 ClockP_timerTickIsr
    0000c0e9 ClockP_usecToTicks
    0000b7b9 ClockP_usleep
    0000bdc3 DebugP_logZoneEnable
    0000c161 DebugP_memLogWriterInit
    000081bd DebugP_memLogWriterPutChar
    000096fd DebugP_memTraceLogWriterPutLine
    0000b62b DebugP_uartLogWriterPutChar
    0000bce5 DebugP_uartSetDrvIndex
    0000af3b Dpl_init
    0000c305 Drivers_open
    0000b165 Drivers_uartOpen
    00000464 FreeRTOS_errno
    0000b321 HOSTtime64
    00002799 HwiP_Params_init
    000088cf HwiP_busFault_handler
    00002729 HwiP_clearInt
    000027ab HwiP_construct
    000088ff HwiP_debugMon_handler
    00002849 HwiP_destruct
    000028d7 HwiP_disable
    00002671 HwiP_disableInt
    000028e3 HwiP_enable
    00002619 HwiP_enableInt
    000088af HwiP_hardFault_handler
    0000c0a7 HwiP_inISR
    000028ef HwiP_init
    00008869 HwiP_interrupt_handler
    000088bf HwiP_memFault_handler
    0000889d HwiP_nmi_handler
    000028c3 HwiP_post
    000088ef HwiP_reserved_handler
    00002667 HwiP_restore
    000026cd HwiP_restoreInt
    0000274b HwiP_setPri
    000088df HwiP_usageFault_handler
    0000bf61 IpcNotify_Params_init
    0000c017 IpcNotify_getConfig
    0000c26d IpcNotify_getSelfCoreId
    000029bd IpcNotify_init
    0000c02f IpcNotify_isCoreEnabled
    000077e9 IpcNotify_isr
    0000b4f7 IpcNotify_registerClient
    00007981 IpcNotify_sendMsg
    0000a8a9 IpcNotify_syncAll
    0000be25 IpcNotify_syncCallback
    0000a6ad IpcNotify_waitSync
    0000b365 MCAN_addExtMsgIDFilter
    0000890f MCAN_calcMsgRamParamsStartAddr
    0000492d MCAN_config
    0000a22f MCAN_getErrCounters
    0000be7f MCAN_getOpMode
    0000ab97 MCAN_getProtocolStatus
    0000adf3 MCAN_getRxFIFOStatus
    0000c047 MCAN_getTxBufTransmissionStatus
    0000b953 MCAN_getTxFIFOQueStatus
    000050cb MCAN_init
    0000bc9d MCAN_initGlobalFilterConfigParams
    0000b88b MCAN_initMsgRamConfigParams
    0000b7ef MCAN_initOperModeParams
    0000bb5f MCAN_initSetBitTimeParams
    0000b8bd MCAN_initTxBufElement
    0000be9b MCAN_isMemInitDone
    00007563 MCAN_lpbkModeEnable
    0000309b MCAN_msgRAMConfig
    00004abd MCAN_readMsgRam
    0000539f MCAN_setBitTime
    0000a4ad MCAN_setExtIDAndMask
    0000bde3 MCAN_setOpMode
    0000b475 MCAN_txBufAddReq
    00005ca5 MCAN_writeMsgRam
    00009b71 MCAN_writeRxFIFOAck
    0000bad5 Module_clockEnable
    0000b6a1 Module_clockSetFrequency
    00004269 MpuP_RegionAttrs_init
    00004379 MpuP_disable
    0000433f MpuP_enable
    000043af MpuP_init
    0000439f MpuP_isEnable
    00004277 MpuP_setRegion
    0000871d Pinmux_config
    0000bd5d Pinmux_init
    0000c227 PowerClock_init
    0000c1db RPMessage_CreateParams_init
    0000bb89 RPMessage_Params_init
    0000b1b1 RPMessage_allocEndPtMsg
    0000ae45 RPMessage_announce
    00009be9 RPMessage_construct
    0000bc51 RPMessage_controlEndPtHandler
    000091d5 RPMessage_coreInit
    0000a005 RPMessage_getEndPtMsg
    0000c309 RPMessage_getLocalEndPt
    0000746d RPMessage_init
    0000bd7f RPMessage_isLinuxCore
    0000a3dd RPMessage_notifyCallback
    00005ddb RPMessage_recv
    0000694f RPMessage_recvHandler
    00006f85 RPMessage_send
    0000b6d9 RPMessage_vringCheckEmptyTxBuf
    0000942d RPMessage_vringGetEmptyTxBuf
    000089b3 RPMessage_vringGetFullRxBuf
    0000bf7b RPMessage_vringGetRxBufAddr
    0000b07b RPMessage_vringGetSize
    0000bf95 RPMessage_vringGetTxBufAddr
    0000beb7 RPMessage_vringGetTxBufLen
    0000ab3d RPMessage_vringIsFullRxBuf
    00008e27 RPMessage_vringPutEmptyRxBuf
    00009989 RPMessage_vringPutFullTxBuf
    00007ca1 RPMessage_vringReset
    00009551 RPMessage_vringResetInternal
    000087c3 RPMessage_vringResetLinux
    0000988d RPMessage_waitForLinuxReady
    0000bed3 SOC_getCoreName
    00009e3f SOC_moduleClockEnable
    000058dd SOC_moduleSetClockFrequency
    0000bc77 Sciclient_getContext
    0000b711 Sciclient_getCurrentContext
    0000c0bd Sciclient_getDevId
    00009001 Sciclient_init
    0000a513 Sciclient_pmGetModuleClkFreq
    00009a03 Sciclient_pmGetModuleClkNumParent
    0000a579 Sciclient_pmGetModuleClkParent
    0000a073 Sciclient_pmGetModuleState
    0000aa85 Sciclient_pmModuleClkRequest
    0000a711 Sciclient_pmModuleGetClkStatus
    00008ec5 Sciclient_pmQueryModuleClkFreq
    00009671 Sciclient_pmSetModuleClkFreq
    0000a969 Sciclient_pmSetModuleClkParent
    0000b3a9 Sciclient_pmSetModuleRst
    0000ae97 Sciclient_pmSetModuleState
    00002d41 Sciclient_service
    00009f23 SemaphoreP_constructBinary
    0000af8b SemaphoreP_constructMutex
    0000c2f1 SemaphoreP_destruct
    0000a5df SemaphoreP_pend
    0000a645 SemaphoreP_post
    0000be43 SysTickTimerP_Params_init
    0000c235 SysTickTimerP_getCount
    0000c243 SysTickTimerP_getReloadCount
    00006c79 SysTickTimerP_setup
    0000c173 SysTickTimerP_start
    000083cd System_init
    0000c1a9 TI_memcpy_small
    0000c25f TI_memset_small
    0000bfaf TaskP_Params_init
    00004c49 TaskP_construct
    00008525 TaskP_loadUpdateAll
    0000c05f TaskP_yield
    00005795 UART_close
    0000ad4b UART_dmaClose
    0000ac9f UART_dmaDisableChannel
    0000b5ef UART_dmaOpen
    00008059 UART_flushTxFifo
    0000bb03 UART_getHandle
    00009305 UART_init
    000013c9 UART_open
    00003abd UART_write
    0000bfc9 UART_writeInterruptDma
    0003c6c0 _CIOBUF_
    0000a9c9 _DebugP_assert
    0000be61 _DebugP_assertNoLog
    00009dc9 _DebugP_logZone
    0003d000 __BSS_END
    00030000 __BSS_START
    0003c6c0 __CIOBUF_
    00018320 __STACK_END
    00004000 __STACK_SIZE
    00008000 __SYSMEM_SIZE
    UNDEFED __TI_CINIT_Base
    UNDEFED __TI_CINIT_Limit
    UNDEFED __TI_Handler_Table_Base
    UNDEFED __TI_Handler_Table_Limit
    0000b781 __TI_auto_init_nobinit_nopinit
    ffffffff __TI_pprof_out_hndl
    ffffffff __TI_prof_data_size
    ffffffff __TI_prof_data_start
    0000b985 __TI_readmsg
    00000201 __TI_scanfi
    00000000 __TI_static_base__
    0000b825 __TI_writemsg
    000045ef __adddf3
    0003f2d0 __aeabi_ctype_table_
    0003f2d0 __aeabi_ctype_table_C
    0000a1c1 __aeabi_d2f
    0000b291 __aeabi_d2iz
    0000b431 __aeabi_d2uiz
    000045ef __aeabi_dadd
    0000a845 __aeabi_dcmpeq
    0000a881 __aeabi_dcmpge
    0000a895 __aeabi_dcmpgt
    0000a86d __aeabi_dcmple
    0000a859 __aeabi_dcmplt
    0000b9b5 __aeabi_dcmpun
    00005f11 __aeabi_ddiv
    00007181 __aeabi_dmul
    000045e5 __aeabi_dsub
    00000468 __aeabi_errno
    0000c2c9 __aeabi_errno_addr
    0000bb31 __aeabi_i2d
    0000479b __aeabi_ldiv0
    0000c125 __aeabi_ldivmod
    0000c145 __aeabi_memclr
    0000c145 __aeabi_memclr4
    0000c145 __aeabi_memclr8
    0000c315 __aeabi_memcpy
    0000c315 __aeabi_memcpy4
    0000c315 __aeabi_memcpy8
    0000c139 __aeabi_memset
    0000c139 __aeabi_memset4
    0000c139 __aeabi_memset8
    0000be05 __aeabi_ui2d
    0000c14d __aeabi_uldivmod
    ffffffff __binit__
    0000a151 __cmpdf2
    00005f11 __divdf3
    0000aae1 __divmoddi4
    0000a151 __eqdf2
    0000b291 __fixdfsi
    0000b431 __fixunsdfsi
    0000bb31 __floatsidf
    0000be05 __floatunsidf
    0000a0e1 __gedf2
    0000a0e1 __gtdf2
    0000a151 __ledf2
    0000479d __localtime64
    0000a151 __ltdf2
    000033d5 __mktime64
    0000c30d __mpu_init
    00007181 __muldf3
    0000a151 __nedf2
    00014320 __stack
    00030000 __start___llvm_prf_bits
    00030000 __start___llvm_prf_cnts
    00030000 __stop___llvm_prf_bits
    00030000 __stop___llvm_prf_cnts
    000045e5 __subdf3
    0000c1eb __time64
    0000a1c1 __truncdfsf2
    0000831d __udivmoddi4
    0000b9b5 __unorddf2
    0000ac47 _c_int00
    0000046c _lock
    00004abb _nop
    0000c320 _sys_memory
    UNDEFED _system_post_cinit
    0000040c _tz
    00000470 _unlock
    0000c311 abort
    000063c5 aligned_alloc
    0000b249 atoi
    ffffffff binit
    0000b749 createQueue
    00008ce7 eTaskGetState
    0000727d free
    0000c185 freertos_main
    0000041c gAddrTranslateConfig
    00000200 gAddrTranslateRegionConfig
    000003f8 gClockConfig
    0003ced8 gClockCtrl
    00000474 gDebugLogZone
    00038000 gDebugMemLog
    0000047c gDebugMemLogSize
    00000488 gDebugP_uartDrvIndex
    0003c040 gHwiCtrl
    00000000 gHwiP_vectorTable
    0003c9e0 gIpcNotifyCtrl
    0000048c gIpcNotifyInterruptConfigNum_m4fss0_0
    000002d4 gIpcNotifyInterruptConfig_m4fss0_0
    0000032c gIpcNotifyMailboxBaseAddr
    0000016c gIpcNotifyMailboxConfig
    0003c2c0 gIpcRecvMsgObject
    0003a000 gIpcRpmsgCtrl
    0003c440 gIpcTask
    00030000 gIpcTaskStack
    0003cfac gMainTask
    0003ccd0 gMainTaskObj
    00034000 gMainTaskStack
    00000398 gMcanBitTimingDefaultParams
    00000428 gMpuConfig
    000003b8 gMpuRegionConfig
    9cc00000 gRPMessage_linuxResourceTable
    0003ce88 gRovDummyQueue
    0003f3d4 gSciclientMap
    000003d8 gSciclientSecProxyCfg
    00000434 gSocModules
    00000350 gSocModulesClockFrequency
    0003cdd8 gTaskP_ctrl
    00000450 gUartConfig
    000004a4 gUartConfigNum
    00000000 gUartDmaConfig
    000004a8 gUartDmaConfigNum
    0003cfb0 gUartHandle
    00000280 gUartParams
    0003ca88 g_IpcMsgQueRcvTask
    0003b740 g_IpcMsgQueTaskStack
    0003ab40 g_McanTaskStack
    00000502 g_canMgrState
    0003cf88 g_dmsFeatureData
    000004ac g_hdlTxCanDataSemaphore
    000004b0 g_qHdl
    00000503 g_sbdState
    00000500 g_sbdStateUpdated
    00000000 g_stCanPayload
    0003c580 g_taskobjMcanTask
    0000bda1 getSeatBeltDetectionState
    00004f4d initDrvCanTransRcvr
    000095e1 initMcanTxElementDefault
    00006d81 ipc_recv_task_main
    00004dcd ipc_rpmsg_create_recv_tasks
    0000a909 ipcsvc_rpmsg_main
    00006a61 ldexp
    00006a61 ldexpl
    0000980b main
    0000c2e1 malloc
    000063c5 memalign
    0003cf90 parmbuf
    0000c197 putchar_
    0000c077 pvPortMalloc
    0000c08f pvTaskIncrementMutexHeldCount
    000004b8 pxCurrentTCB
    0000bbd9 pxPortInitialiseStack
    0000b8ef rcvQueue
    00007b15 receiveCanData
    00006a61 scalbn
    00006a61 scalbnl
    00006839 sendCanData
    0000ad9f sendMsgToQueue
    0000b1fd sendQueue
    0000b921 snprintf_
    0000ba15 sscanf
    000085cd startServiceCommTask
    00005a21 startSvcCanIfTask
    00001d69 strtod
    0000564d strtol
    00001d69 strtold
    000040a9 strtoll
    00006601 strtoul
    00005501 strtoull
    0000826d svcCommMsgQueueRcvTask
    0000c2e9 uiPortGetRunTimeCounterValue
    00008c45 updateTxCanElement
    0000990b updateTxCanElement_SBD
    0000bcc1 uxListRemove
    0003f874 uxTopUsedPriority
    0000bf0d vApplicationGetIdleTaskMemory
    0000bf29 vApplicationGetTimerTaskMemory
    0000c2af vApplicationIdleHook
    0000b535 vApplicationLoadHook
    0000ba45 vApplicationStackOverflowHook
    0000c0d3 vListInitialise
    0000c2f7 vListInitialiseItem
    0000b665 vListInsert
    0000bf45 vListInsertEnd
    000058db vPortConfigTimerForRunTimeStats
    0000aa27 vPortEnterCritical
    0000b3ed vPortExitCritical
    0000bfe3 vPortFree
    0000bcf1 vPortSVCHandler
    0000b573 vPortTimerTickHandler
    0000bc01 vQueueAddToRegistry
    0000a775 vQueueDelete
    0000b2d9 vQueueWaitForMessageRestricted
    0000a373 vTaskDelay
    000062a3 vTaskDelete
    0000926d vTaskGetInfo
    0000bffd vTaskInternalSetTimeOutState
    0000c251 vTaskMissedYield
    0000b0c9 vTaskPlaceOnEventList
    0000abef vTaskPlaceOnEventListRestricted
    0000763d vTaskPriorityDisinheritAfterTimeout
    00007bdd vTaskStartScheduler
    0000c1fb vTaskSuspendAll
    00007375 vTaskSwitchContext
    0000bd15 vprintf_
    0000a7e1 xPortPendSVHandler
    00009af7 xPortStartScheduler
    0000bc29 xQueueCreateMutex
    0000ba75 xQueueCreateMutexStatic
    00007fa1 xQueueGenericCreate
    00007083 xQueueGenericCreateStatic
    000094bf xQueueGenericReset
    00003ec1 xQueueGenericSend
    00006177 xQueueGenericSendFromISR
    00006b6d xQueueGiveFromISR
    0000aee9 xQueueGiveMutexRecursive
    00004429 xQueueReceive
    00006e85 xQueueReceiveFromISR
    0003c8e0 xQueueRegistry
    00003cc5 xQueueSemaphoreTake
    0000b02b xQueueTakeMutexRecursive
    00008f63 xTaskCheckForTimeOut
    00007e27 xTaskCreateStatic
    0000c279 xTaskGetCurrentTaskHandle
    0000b5b1 xTaskGetIdleTaskHandle
    0000bd39 xTaskGetSchedulerState
    0000c285 xTaskGetTickCount
    00005235 xTaskIncrementTick
    00007a4b xTaskPriorityDisinherit
    00008675 xTaskPriorityInherit
    00008ba1 xTaskRemoveFromEventList
    00005b65 xTaskResumeAll
    00009785 xTimerCreateTimerTask
    00009d51 xTimerGenericCommand
    
    
    GLOBAL SYMBOLS: SORTED BY Symbol Address
    
    address name
    ------- ----
    00000000 __TI_static_base__
    00000000 gHwiP_vectorTable
    00000000 gUartDmaConfig
    00000000 g_stCanPayload
    0000016c gIpcNotifyMailboxConfig
    00000200 gAddrTranslateRegionConfig
    00000201 __TI_scanfi
    00000280 gUartParams
    000002d4 gIpcNotifyInterruptConfig_m4fss0_0
    0000032c gIpcNotifyMailboxBaseAddr
    00000350 gSocModulesClockFrequency
    00000398 gMcanBitTimingDefaultParams
    000003b8 gMpuRegionConfig
    000003d8 gSciclientSecProxyCfg
    000003f8 gClockConfig
    0000040c _tz
    0000041c gAddrTranslateConfig
    00000428 gMpuConfig
    00000434 gSocModules
    00000450 gUartConfig
    00000464 FreeRTOS_errno
    00000468 __aeabi_errno
    0000046c _lock
    00000470 _unlock
    00000474 gDebugLogZone
    0000047c gDebugMemLogSize
    00000488 gDebugP_uartDrvIndex
    0000048c gIpcNotifyInterruptConfigNum_m4fss0_0
    000004a4 gUartConfigNum
    000004a8 gUartDmaConfigNum
    000004ac g_hdlTxCanDataSemaphore
    000004b0 g_qHdl
    000004b8 pxCurrentTCB
    00000500 g_sbdStateUpdated
    00000502 g_canMgrState
    00000503 g_sbdState
    000013c9 UART_open
    000018bf Board_driversClose
    00001d69 strtod
    00001d69 strtold
    000021dd Board_driversOpen
    00002619 HwiP_enableInt
    00002667 HwiP_restore
    00002671 HwiP_disableInt
    000026cd HwiP_restoreInt
    00002729 HwiP_clearInt
    0000274b HwiP_setPri
    00002799 HwiP_Params_init
    000027ab HwiP_construct
    00002849 HwiP_destruct
    000028c3 HwiP_post
    000028d7 HwiP_disable
    000028e3 HwiP_enable
    000028ef HwiP_init
    000029bd IpcNotify_init
    00002d41 Sciclient_service
    0000309b MCAN_msgRAMConfig
    000033d5 __mktime64
    00003abb Board_init
    00003abd UART_write
    00003cc3 CacheP_inv
    00003cc5 xQueueSemaphoreTake
    00003ec1 xQueueGenericSend
    00004000 __STACK_SIZE
    000040a9 strtoll
    00004269 MpuP_RegionAttrs_init
    00004277 MpuP_setRegion
    0000433f MpuP_enable
    00004379 MpuP_disable
    0000439f MpuP_isEnable
    000043af MpuP_init
    00004427 CacheP_wbInv
    00004429 xQueueReceive
    000045e3 ClockP_timerClearOverflowInt
    000045e5 __aeabi_dsub
    000045e5 __subdf3
    000045ef __adddf3
    000045ef __aeabi_dadd
    0000479b __aeabi_ldiv0
    0000479d __localtime64
    0000492d MCAN_config
    00004abb _nop
    00004abd MCAN_readMsgRam
    00004c49 TaskP_construct
    00004dcd ipc_rpmsg_create_recv_tasks
    00004f4d initDrvCanTransRcvr
    000050cb MCAN_init
    00005235 xTaskIncrementTick
    0000539f MCAN_setBitTime
    00005501 strtoull
    0000564d strtol
    00005795 UART_close
    000058db vPortConfigTimerForRunTimeStats
    000058dd SOC_moduleSetClockFrequency
    00005a21 startSvcCanIfTask
    00005b65 xTaskResumeAll
    00005ca5 MCAN_writeMsgRam
    00005ddb RPMessage_recv
    00005f11 __aeabi_ddiv
    00005f11 __divdf3
    00006047 ClockP_init
    00006177 xQueueGenericSendFromISR
    000062a3 vTaskDelete
    000063c5 aligned_alloc
    000063c5 memalign
    00006601 strtoul
    00006839 sendCanData
    0000694f RPMessage_recvHandler
    00006a61 ldexp
    00006a61 ldexpl
    00006a61 scalbn
    00006a61 scalbnl
    00006b6d xQueueGiveFromISR
    00006c79 SysTickTimerP_setup
    00006d81 ipc_recv_task_main
    00006e85 xQueueReceiveFromISR
    00006f85 RPMessage_send
    00007083 xQueueGenericCreateStatic
    00007181 __aeabi_dmul
    00007181 __muldf3
    0000727d free
    00007375 vTaskSwitchContext
    0000746d RPMessage_init
    00007563 MCAN_lpbkModeEnable
    0000763d vTaskPriorityDisinheritAfterTimeout
    000077e9 IpcNotify_isr
    00007981 IpcNotify_sendMsg
    00007a4b xTaskPriorityDisinherit
    00007b15 receiveCanData
    00007bdd vTaskStartScheduler
    00007ca1 RPMessage_vringReset
    00007e27 xTaskCreateStatic
    00007fa1 xQueueGenericCreate
    00008000 __SYSMEM_SIZE
    00008059 UART_flushTxFifo
    0000810d AddrTranslateP_init
    000081bd DebugP_memLogWriterPutChar
    0000826d svcCommMsgQueueRcvTask
    0000831d __udivmoddi4
    000083cd System_init
    00008525 TaskP_loadUpdateAll
    000085cd startServiceCommTask
    00008675 xTaskPriorityInherit
    0000871d Pinmux_config
    000087c3 RPMessage_vringResetLinux
    00008869 HwiP_interrupt_handler
    0000889d HwiP_nmi_handler
    000088af HwiP_hardFault_handler
    000088bf HwiP_memFault_handler
    000088cf HwiP_busFault_handler
    000088df HwiP_usageFault_handler
    000088ef HwiP_reserved_handler
    000088ff HwiP_debugMon_handler
    0000890f MCAN_calcMsgRamParamsStartAddr
    000089b3 RPMessage_vringGetFullRxBuf
    00008ba1 xTaskRemoveFromEventList
    00008c45 updateTxCanElement
    00008ce7 eTaskGetState
    00008e27 RPMessage_vringPutEmptyRxBuf
    00008ec5 Sciclient_pmQueryModuleClkFreq
    00008f63 xTaskCheckForTimeOut
    00009001 Sciclient_init
    000091d5 RPMessage_coreInit
    0000926d vTaskGetInfo
    00009305 UART_init
    0000942d RPMessage_vringGetEmptyTxBuf
    000094bf xQueueGenericReset
    00009551 RPMessage_vringResetInternal
    000095e1 initMcanTxElementDefault
    00009671 Sciclient_pmSetModuleClkFreq
    000096fd DebugP_memTraceLogWriterPutLine
    00009785 xTimerCreateTimerTask
    0000980b main
    0000988d RPMessage_waitForLinuxReady
    0000990b updateTxCanElement_SBD
    00009989 RPMessage_vringPutFullTxBuf
    00009a03 Sciclient_pmGetModuleClkNumParent
    00009af7 xPortStartScheduler
    00009b71 MCAN_writeRxFIFOAck
    00009be9 RPMessage_construct
    00009d51 xTimerGenericCommand
    00009dc9 _DebugP_logZone
    00009e3f SOC_moduleClockEnable
    00009f23 SemaphoreP_constructBinary
    0000a005 RPMessage_getEndPtMsg
    0000a073 Sciclient_pmGetModuleState
    0000a0e1 __gedf2
    0000a0e1 __gtdf2
    0000a151 __cmpdf2
    0000a151 __eqdf2
    0000a151 __ledf2
    0000a151 __ltdf2
    0000a151 __nedf2
    0000a1c1 __aeabi_d2f
    0000a1c1 __truncdfsf2
    0000a22f MCAN_getErrCounters
    0000a309 AddrTranslateP_getLocalAddr
    0000a373 vTaskDelay
    0000a3dd RPMessage_notifyCallback
    0000a4ad MCAN_setExtIDAndMask
    0000a513 Sciclient_pmGetModuleClkFreq
    0000a579 Sciclient_pmGetModuleClkParent
    0000a5df SemaphoreP_pend
    0000a645 SemaphoreP_post
    0000a6ad IpcNotify_waitSync
    0000a711 Sciclient_pmModuleGetClkStatus
    0000a775 vQueueDelete
    0000a7e1 xPortPendSVHandler
    0000a845 __aeabi_dcmpeq
    0000a859 __aeabi_dcmplt
    0000a86d __aeabi_dcmple
    0000a881 __aeabi_dcmpge
    0000a895 __aeabi_dcmpgt
    0000a8a9 IpcNotify_syncAll
    0000a909 ipcsvc_rpmsg_main
    0000a969 Sciclient_pmSetModuleClkParent
    0000a9c9 _DebugP_assert
    0000aa27 vPortEnterCritical
    0000aa85 Sciclient_pmModuleClkRequest
    0000aae1 __divmoddi4
    0000ab3d RPMessage_vringIsFullRxBuf
    0000ab97 MCAN_getProtocolStatus
    0000abef vTaskPlaceOnEventListRestricted
    0000ac47 _c_int00
    0000ac9f UART_dmaDisableChannel
    0000ad4b UART_dmaClose
    0000ad9f sendMsgToQueue
    0000adf3 MCAN_getRxFIFOStatus
    0000ae45 RPMessage_announce
    0000ae97 Sciclient_pmSetModuleState
    0000aee9 xQueueGiveMutexRecursive
    0000af3b Dpl_init
    0000af8b SemaphoreP_constructMutex
    0000b02b xQueueTakeMutexRecursive
    0000b07b RPMessage_vringGetSize
    0000b0c9 vTaskPlaceOnEventList
    0000b119 ClockP_getTimeUsec
    0000b165 Drivers_uartOpen
    0000b1b1 RPMessage_allocEndPtMsg
    0000b1fd sendQueue
    0000b249 atoi
    0000b291 __aeabi_d2iz
    0000b291 __fixdfsi
    0000b2d9 vQueueWaitForMessageRestricted
    0000b321 HOSTtime64
    0000b365 MCAN_addExtMsgIDFilter
    0000b3a9 Sciclient_pmSetModuleRst
    0000b3ed vPortExitCritical
    0000b431 __aeabi_d2uiz
    0000b431 __fixunsdfsi
    0000b475 MCAN_txBufAddReq
    0000b4f7 IpcNotify_registerClient
    0000b535 vApplicationLoadHook
    0000b573 vPortTimerTickHandler
    0000b5b1 xTaskGetIdleTaskHandle
    0000b5ef UART_dmaOpen
    0000b62b DebugP_uartLogWriterPutChar
    0000b665 vListInsert
    0000b6a1 Module_clockSetFrequency
    0000b6d9 RPMessage_vringCheckEmptyTxBuf
    0000b711 Sciclient_getCurrentContext
    0000b749 createQueue
    0000b781 __TI_auto_init_nobinit_nopinit
    0000b7b9 ClockP_usleep
    0000b7ef MCAN_initOperModeParams
    0000b825 __TI_writemsg
    0000b84f C$$IO$$
    0000b88b MCAN_initMsgRamConfigParams
    0000b8bd MCAN_initTxBufElement
    0000b8ef rcvQueue
    0000b921 snprintf_
    0000b953 MCAN_getTxFIFOQueStatus
    0000b985 __TI_readmsg
    0000b9b5 __aeabi_dcmpun
    0000b9b5 __unorddf2
    0000ba15 sscanf
    0000ba45 vApplicationStackOverflowHook
    0000ba75 xQueueCreateMutexStatic
    0000baa5 ClockP_timerTickIsr
    0000bad5 Module_clockEnable
    0000bb03 UART_getHandle
    0000bb31 __aeabi_i2d
    0000bb31 __floatsidf
    0000bb5f MCAN_initSetBitTimeParams
    0000bb89 RPMessage_Params_init
    0000bbd9 pxPortInitialiseStack
    0000bc01 vQueueAddToRegistry
    0000bc29 xQueueCreateMutex
    0000bc51 RPMessage_controlEndPtHandler
    0000bc77 Sciclient_getContext
    0000bc9d MCAN_initGlobalFilterConfigParams
    0000bcc1 uxListRemove
    0000bce5 DebugP_uartSetDrvIndex
    0000bcf1 vPortSVCHandler
    0000bd15 vprintf_
    0000bd39 xTaskGetSchedulerState
    0000bd5d Pinmux_init
    0000bd7f RPMessage_isLinuxCore
    0000bda1 getSeatBeltDetectionState
    0000bdc3 DebugP_logZoneEnable
    0000bde3 MCAN_setOpMode
    0000be05 __aeabi_ui2d
    0000be05 __floatunsidf
    0000be25 IpcNotify_syncCallback
    0000be43 SysTickTimerP_Params_init
    0000be61 _DebugP_assertNoLog
    0000be7f MCAN_getOpMode
    0000be9b MCAN_isMemInitDone
    0000beb7 RPMessage_vringGetTxBufLen
    0000bed3 SOC_getCoreName
    0000bf0d vApplicationGetIdleTaskMemory
    0000bf29 vApplicationGetTimerTaskMemory
    0000bf45 vListInsertEnd
    0000bf61 IpcNotify_Params_init
    0000bf7b RPMessage_vringGetRxBufAddr
    0000bf95 RPMessage_vringGetTxBufAddr
    0000bfaf TaskP_Params_init
    0000bfc9 UART_writeInterruptDma
    0000bfe3 vPortFree
    0000bffd vTaskInternalSetTimeOutState
    0000c017 IpcNotify_getConfig
    0000c02f IpcNotify_isCoreEnabled
    0000c047 MCAN_getTxBufTransmissionStatus
    0000c05f TaskP_yield
    0000c077 pvPortMalloc
    0000c08f pvTaskIncrementMutexHeldCount
    0000c0a7 HwiP_inISR
    0000c0bd Sciclient_getDevId
    0000c0d3 vListInitialise
    0000c0e9 ClockP_usecToTicks
    0000c125 __aeabi_ldivmod
    0000c139 __aeabi_memset
    0000c139 __aeabi_memset4
    0000c139 __aeabi_memset8
    0000c145 __aeabi_memclr
    0000c145 __aeabi_memclr4
    0000c145 __aeabi_memclr8
    0000c14d __aeabi_uldivmod
    0000c161 DebugP_memLogWriterInit
    0000c173 SysTickTimerP_start
    0000c185 freertos_main
    0000c197 putchar_
    0000c1a9 TI_memcpy_small
    0000c1bb ClockP_ticksToUsec
    0000c1db RPMessage_CreateParams_init
    0000c1eb __time64
    0000c1fb vTaskSuspendAll
    0000c227 PowerClock_init
    0000c235 SysTickTimerP_getCount
    0000c243 SysTickTimerP_getReloadCount
    0000c251 vTaskMissedYield
    0000c25f TI_memset_small
    0000c26d IpcNotify_getSelfCoreId
    0000c279 xTaskGetCurrentTaskHandle
    0000c285 xTaskGetTickCount
    0000c291 AddrTranslateP_Params_init
    0000c29b CSL_secProxyGetDataAddr
    0000c2af vApplicationIdleHook
    0000c2c9 __aeabi_errno_addr
    0000c2e1 malloc
    0000c2e9 uiPortGetRunTimeCounterValue
    0000c2f1 SemaphoreP_destruct
    0000c2f7 vListInitialiseItem
    0000c2fd ClockP_getTicks
    0000c301 ClockP_getTimerCount
    0000c305 Drivers_open
    0000c309 RPMessage_getLocalEndPt
    0000c30d __mpu_init
    0000c310 C$$EXIT
    0000c311 abort
    0000c315 __aeabi_memcpy
    0000c315 __aeabi_memcpy4
    0000c315 __aeabi_memcpy8
    0000c320 _sys_memory
    00014320 __stack
    00018320 __STACK_END
    00030000 __BSS_START
    00030000 __start___llvm_prf_bits
    00030000 __start___llvm_prf_cnts
    00030000 __stop___llvm_prf_bits
    00030000 __stop___llvm_prf_cnts
    00030000 gIpcTaskStack
    00034000 gMainTaskStack
    00038000 gDebugMemLog
    0003a000 gIpcRpmsgCtrl
    0003ab40 g_McanTaskStack
    0003b740 g_IpcMsgQueTaskStack
    0003c040 gHwiCtrl
    0003c2c0 gIpcRecvMsgObject
    0003c440 gIpcTask
    0003c580 g_taskobjMcanTask
    0003c6c0 _CIOBUF_
    0003c6c0 __CIOBUF_
    0003c8e0 xQueueRegistry
    0003c9e0 gIpcNotifyCtrl
    0003ca88 g_IpcMsgQueRcvTask
    0003ccd0 gMainTaskObj
    0003cdd8 gTaskP_ctrl
    0003ce88 gRovDummyQueue
    0003ced8 gClockCtrl
    0003cf88 g_dmsFeatureData
    0003cf90 parmbuf
    0003cfac gMainTask
    0003cfb0 gUartHandle
    0003d000 __BSS_END
    0003f2d0 __aeabi_ctype_table_
    0003f2d0 __aeabi_ctype_table_C
    0003f3d4 gSciclientMap
    0003f874 uxTopUsedPriority
    9cc00000 gRPMessage_linuxResourceTable
    ffffffff __TI_pprof_out_hndl
    ffffffff __TI_prof_data_size
    ffffffff __TI_prof_data_start
    ffffffff __binit__
    ffffffff binit
    UNDEFED __TI_CINIT_Base
    UNDEFED __TI_CINIT_Limit
    UNDEFED __TI_Handler_Table_Base
    UNDEFED __TI_Handler_Table_Limit
    UNDEFED _system_post_cinit
    
    [420 symbols]

    此致、  

    Vadivel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vadivel:

    在 linker.cmd 文件中、请为 IPC_VRING 添加内存区域。 下面是经过修改的 linker.cmd 文件。

    /* make sure below retain is there in your linker command file, it keeps the vector table in the final binary */
    --retain="*(.vectors)"
    /* This is the stack that is used by code running within main()
     * In case of NORTOS,
     * - This means all the code outside of ISR uses this stack
     * In case of FreeRTOS
     * - This means all the code until vTaskStartScheduler() is called in main()
     *   uses this stack.
     * - After vTaskStartScheduler() each task created in FreeRTOS has its own stack
     */
    --stack_size=16384
    /* This is the heap size for malloc() API in NORTOS and FreeRTOS
     * This is also the heap used by pvPortMalloc in FreeRTOS
     */
    --heap_size=32768
    
    
    SECTIONS
    {
        /* This has the M4F entry point and vector table, this MUST be at 0x0 */
        .vectors:{} palign(8) > M4F_VECS
        .text:   {} palign(8) > M4F_IRAM     /* This is where code resides */
    
        .bss:    {} palign(8) > M4F_DRAM     /* This is where uninitialized globals go */
        RUN_START(__BSS_START)
        RUN_END(__BSS_END)
    
        .data:   {} palign(8) > DDR_1     	 /* This is where initialized globals and static go */
        .rodata: {} palign(8) > M4F_DRAM     /* This is where const's go */
        .sysmem: {} palign(8) > M4F_IRAM     /* This is where the malloc heap goes */
        .stack:  {} palign(8) > M4F_IRAM     /* This is where the main() stack goes */
    
        GROUP {
    	/* This is the resource table used by linux to know where the IPC "VRINGs" are located */
    	.resource_table: {} palign(4096)
    	} > DDR_0
    
        /* Sections needed for C++ projects */
        .ARM.exidx:     {} palign(8) > M4F_IRAM  /* Needed for C++ exception handling */
        .init_array:    {} palign(8) > M4F_IRAM  /* Contains function pointers called before main */
        .fini_array:    {} palign(8) > M4F_IRAM  /* Contains function pointers called after main */
        /* this is used only when IPC RPMessage is enabled, else this is not used */
        .bss.ipc_vring_mem   (NOLOAD) : {} > IPC_VRING_MEM
    }
    
    MEMORY
    {
        M4F_VECS : ORIGIN = 0x00000000 , LENGTH = 0x00000200
        M4F_IRAM : ORIGIN = 0x00000200 , LENGTH = 0x0002FE00
        M4F_DRAM : ORIGIN = 0x00030000 , LENGTH = 0x00010000
    
    	/* when using multi-core application's i.e more than one R5F/M4F active, make sure
         * this memory does not overlap with R5F's
         */
        /* Resource table must be placed at the start of DDR_0 when M4 core is early booting with Linux */
        DDR_0       : ORIGIN = 0x9CC00000 , LENGTH = 0x1000
    	DDR_1		: ORIGIN = 0x9CB00000 , LENGTH = 0x100000
    
        IPC_VRING_MEM: ORIGIN = 0x9C800000, LENGTH = 0x00300000
    
    }
    

    请尝试运行包含上述更改的示例、并告知我们它是否有效。

    谢谢。此致、

    Tushar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Tushar、您好!  

    它没有工作。  我已经 在 linker.cmd 文件末尾添加了"IPC_VRING_MEM:origin = 0x9C800000、length = 0x00300000"、并 执行以下步骤。  

    步骤:

    1)构建 M4F 映像(驱动程序、应用程序、组件等) "am62-mcu-m4f0_0-fw"

    2) 2)将"am62-mcu-m4f0_0-fw"文件复制到"/lib/firmware /"文件夹中

    3) 3)下电上电(以加载并运行新的 M4F 映像和应用程序)

    它未按预期工作(预计加载"am62-mcu-m4f0_0-fw"、并 开始打印我的应用消息)

    注:

    I)它在 我  按预期从 DDR_1更改为 M4F_IRAM 时有效(加载 "am62-mcu-m4f0_0-fw" 并开始打印 我的应用消息)

       like、from ===>.data  :  {}palign (8)> DDR_1       /*这是初始化的全局变量和静态 GO 的位置*/

            to   ==>.data   :  {}palign (8)> M4F_IRAM   /*这是初始化的全局变量和静态 GO */的位置

     ii)在我进行以下更改时出现链接器错误

            to   ==>.data   :  {}palign (8)> M4F_DRAM   /*这是初始化的全局变量和静态 GO */的位置

    错误:

    链接:am62x:m4fss0-0:freertos:ti-arm-clang mcu_svc_linux.release.out ...
    "linker.cmd"、第29行:错误:程序将无法放入可用存储器中、或
    该段包含的调用站点需要一个不能的 trampoline
    生成的符号链接。 段对齐放置失败
    ".data"大小0x507。 可用存储器范围:
    M4F_DRAM 大小:0x10000未使用:0x490最大孔:0x490
    错误:链接期间遇到错误;未找到"mcu_svc_linux.release.out"
    构建
    tiarmclang:错误:tiarmlnk 命令失败、退出代码1 (使用-v 查看调用)
    Makefile:172:目标"cu_Svc_linux.release.out"的食谱失败
    制造:***[MCU_Svc_linux.release.out]错误1

    此致、  

    Vadivel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vadivel:   

    它不起作用。  我已经 在 linker.cmd 文件末尾添加了"IPC_VRING_MEM:origin = 0x9C800000、length = 0x00300000"、并 执行以下步骤。  [/报价]

    您是否也在 linker.cmd 文件中添加了以下代码。

    /* this is used only when IPC RPMessage is enabled, else this is not used */
        .bss.ipc_vring_mem   (NOLOAD) : {} > IPC_VRING_MEM

    步骤:

    1)构建 M4F 映像(驱动程序、应用程序、组件等) "am62-mcu-m4f0_0-fw"

    2) 2)复制二进制文件 (.out) 文件" /lib/firmware /" 文件夹

    3)为创建软链接  "am62-mcu-m4f0_0-fw"。  

    4) 4)下电上电(以加载并运行新的 M4F 映像和应用程序)

      有关更多详细信息、请参阅引导远程内核部分。

    我还附加了一个 Hello world 程序示例、该程序用于保持 `。数据` 中的通信类型段。 请参考样片程序的设置。 您也可以尝试运行示例程序,并让我们知道它是否在工作?

    hello_world.zip

    谢谢。此致、

    Tushar Thakur