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.

[参考译文] J721S2XSOMXEVM:如何使 freertos_mcu1_0_release.xer5f.map 的".farddata.appdataconst:加载固定位置的 addr=xxxxx&quot?

Guru**** 2425270 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1537904/j721s2xsomxevm-how-to-make-fardata-appdataconst-load-addr-xxxxx-of-freertos_mcu1_0_release-xer5f-map-in-a-fixed-position

器件型号:J721S2XSOMXEVM


工具/软件:

尊敬的 TI

如何使 freertos_mcu1_0_release.xer5f.map 的“.fardata.appdataconst: load addr=xxxxx“处于固定位置?

rtos-build\pdk_j721s2_10_01_00_25\packages\ti\binary\ipc_echo_testb_freertos\bin\j721s2_evm\ipc_echo_testb_freertos_mcu1_0_release.xer5f.map

.cinit 0 a08a5008 000261f8
a08a5008 00017342 (.cinit。data.load)【加载图像】
a08bc34a 00000002 ----[填充= 00000000]
a08bc34c 0000ee58 (.cinit ..fardata.appdataconst.load)【加载图像】
a08cb1a4 00000008 (.cinit .bss.appdatavar.load)[加载映像、压缩= zero_init]
a08cb1ac 00000008 (.cinit..bss.devgroup.load)[加载映像、压缩= zero_init]
a08cb1b4 00000008 (.cinit。bss.load)[加载映像、压缩= zero_init]
a08cb1bc 00000008 (.cinit。tracebuf.load)[加载映像、压缩= zero_init]
a08cb1c4 00000008 (_TI_HANDLER_TABLE)
a08cb1cc 00000030 (_TI_cinit_table)
a08cb1fc 00000004 --hole--[填充= 00000000]

_TI_cinit_table @ a08cb1cc 记录:6、大小/记录:8、表大小:48
.data:load addr=a08a5008、load size=00017342 字节、run addr=a0880500、run size=00017380 字节、compression=copy
.fardata.appdataconst:load addr=a08bc34c、load size=0000ee58 字节、run addr=a0fa0000、run size=0000ee50 字节、compression=copy
.bss.appdatavar:load addr=a08cb1a4、load size=00000008 字节、run addr=a0f90000、run size=00009be4 字节、compression=zero_init
.bss.devgroup: load addr=a08cb1ac、load size=00000008 字节、run addr=a07268a0、run size=000013c5 字节、compression=zero_init
.bss:load addr=a08cb1b4、load size=00000008 字节、run addr=a0728000、run size=0013ad26 字节、compression=zero_init
.tracebuf:load addr=a08cb1bc、load size=00000008 字节、run addr=a0100400、run size=00080004 字节、compression=zero_init

rtos-build\pdk_j721s2_10_01_00_25\packages\ti\adas\common\j721s2\freertos\linker_r5f_freertos_common.inc

.fardata.appdataconst:

*(.fardata.appdataconst)
}> MCU1_0_DF_SPACE


此致
佳豪

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

    您好:

    appdataconst

    这到底是什么 ,我知道你在这里做什么?

    此致

    Tarun Mukesh

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

    亲爱的  Tarun Mukesh

    我们希望地址“.fardata.appdataconst:load addr=xxxxx“ 可以修复  

    然后、我们使用 XCP 可以获得 相同的地址进行调试  

    此致

    佳豪

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

    您好:

    [引用 userid=“654395" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1537904/j721s2xsomxevm-how-to-make-fardata-appdataconst-load-addr-xxxxx-of-freertos_mcu1_0_release-xer5f-map-in-a-fixed-position ].fardata.appdataconst:

    *(.fardata.appdataconst)
    }> MCU1_0_DF_SPACE

    你已经给了这个部分权利. 在本节中、您可以将 MCU1_0_DF_space 映射到某个存储器地址位置、并且使用该段属性映射的所有变量都将转到同一位置。

    示例:

    int my_variable __attribute__((section(“.fardata.appdataconst")“)))= 1

    此致

    Tarun Mukesh

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

    亲爱的  Tarun Mukesh

    ipc_echo_testb_freertos_mcu1_0_release.xer5f.map

    .cinit 0 a08a5008 000261f8
    a08a5008 00017342 (.cinit。data.load)【加载图像】
    a08bc34a 00000002 ----[填充= 00000000]
    a08bc34c  0000ee58 (.cinit ..fardata.appdataconst.load)【加载图像】
    a08cb1a4 00000008 (.cinit .bss.appdatavar.load)[加载映像、压缩= zero_init]
    a08cb1ac 00000008 (.cinit..bss.devgroup.load)[加载映像、压缩= zero_init]
    a08cb1b4 00000008 (.cinit。bss.load)[加载映像、压缩= zero_init]
    a08cb1bc 00000008 (.cinit。tracebuf.load)[加载映像、压缩= zero_init]
    a08cb1c4 00000008 (_TI_HANDLER_TABLE)
    a08cb1cc 00000030 (_TI_cinit_table)
    a08cb1fc 00000004 --hole--[填充= 00000000]

    ^^^^^^^^μ s 这些地址对齐 0x8

    是否可以 使  (.cinit .fardata.appdataconst.load) 对齐 1024?

    此致

    佳豪

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

    亲爱的 Tarun Mukesh

    我尝试设置
    -.cinit:{} palign(8)>__core_ddr_space
    +.cinit:{}palign (1024)>__core_ddr_space
    然后、.cinit 起始地址对齐 1024

    但 (.cinit。fardata.appdataconst.load) 没有对齐 1024
    对齐 8.

    # linker_r5f_freertos_mcu1_0.inc

    很重要

    .text:{}palign (8)>__core_ddr_space
    .const:{}palign (8)>__core_ddr_space
    .rodata:{}palign (8)>__core_ddr_space
    -.cinit:{} palign(8)>__core_ddr_space
    +.cinit:{}palign (1024)>__core_ddr_space
    .bss:{}align (4)>__core_ddr_space
    .far:{}align (4)>__core_ddr_space
    .data:{}palign (128)>__core_ddr_space
    .sysmem:{}>__core_ddr_space
    .data_buffer:{}palign(128)>__core_ddr_space
    .bss.devgroup:{*(.bss.devgroup*)} align (4)>__core_ddr_space
    .const.devgroup:{*(.const.devgroup*)} align (4)>__core_ddr_space
    .boardcfg_data:{}align (4)>__core_ddr_space

    # freertos_mcu1_0_release.xer5f.map_cinit_load_palign_1024

    【之前】
    .cinit 0 a08a5208 00026208
    a08a5208 00017356 (.cinit。data.load)【加载图像】
    a08bc55e 00000002 ----[填充= 00000000]
    a08bc560 0000ee58 (.cinit .fardata.appdataconst.load)【加载图像】
    a08cb3b8 00000008 (.cinit .bss.appdatavar.load)[加载映像、压缩= zero_init]
    a08cb3c0 00000008 (.cinit..bss.devgroup.load)[加载映像、压缩= zero_init]
    a08cb3c8 00000008 (.cinit。bss.load)[加载映像、压缩= zero_init]
    a08cb3d0 00000008 (.cinit。tracebuf.load)[加载映像、压缩= zero_init]
    a08cb3d8 00000008 (_TI_HANDLER_TABLE)
    a08cb3e0 00000030 (_TI_cinit_table)

    【之后】
    .cinit 0 a08a5400 00026400
    a08a5400 00017356 (.cinit .data.load)【加载图像】
    a08bc756 00000002 ----[填充= 00000000]
    a08bc758 0000ee58 (.cinit..fardata.appdataconst.load)【加载映像】<-这
    a08cb5b0 00000008 (.cinit .bss.bss.appdatavar.load)[加载映像、压缩= zero_init]
    a08cb5b8 00000008 (.cinit..bss.devgroup.load)[加载映像、压缩= zero_init]
    a08cb5c0 00000008 (.cinit。bss.load)[加载映像、压缩= zero_init]
    a08cb5c8 00000008 (.cinit。tracebuf.load)[加载映像、压缩= zero_init]
    a08cb5d0 00000008 (__TI_HANDLER_TABLE)
    a08cb5d8 00000030 (_TI_cinit_table)
    a08cb608 000001f8 --hole--[填充= 00000000]


    此致
    佳豪

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

    您好:

    如果希望变量对齐、则需要 在变量之前保留__attribute__((aligned (1024)))。

    我仍然不明白您的用例。 您能否解释一下您正在尝试进行的调试、以及为什么需要在同一位置进行调试并进行调整?

    此致

    Tarun Mukesh

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

    亲爱的  Tarun Mukesh

    如果希望变量对齐、则需要 在变量之前保留__attribute__((aligned (1024)))。

    >>

    可以提供如何修改的修补程序?  谢谢!!

    我知道这些文件

    rtos-build\pdk_j721s2_10_01_00_25\packages\ti\adas\common\j721s2\freertos\

    - linker_r5f_freertos_common.inc

    - memory_map_ddr.cmd

    但我不知道如何修改这些设置

     

    此致

    佳豪

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

    您好:

    我在上面说过,你的想法本身对我来说是不清楚的,我甚至不知道你在这里尝试什么。

    .fardata.appdataconst

    本节应包含哪些变量? 为什么它应该是? 它必须 1024 对齐的原因是什么?

    此致

    Tarun Mukesh

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

    此外、由于.cinit 对齐方式更改为 1024  

    .cinit 0 a08a5400

    cinit a08a5400 的起始地址与 1024 对齐。

    此致

    Tarun Mukesh