bootloader 与 bootloadable img合并的问题

公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
zhji_4006061
Level 3
Level 3
25 replies posted 50 sign-ins First solution authored

我们实现bootloader功能时, app0 当作bootloader, app1 当作bootloadable image,我们想让app0和app1 访问同一片EEPROM 8K的空间。但我们合并app0和app1的时候出现以下问题:

cymcuelftool.exe -M App1.elf App0.elf --output App1_merged.elf --hex APP1_merged.hex

App0.elf: Merge error: Section 0x14000000 at App0.elf overlaps section 0x14000000 from App1.elf,

but it contains different data

我需要怎么配置eeprom,才能让app0和app1都能访问到呢?

0 点赞
1 解答
ShipingW_81
Moderator
Moderator
Moderator
500 replies posted 250 solutions authored 250 replies posted

如果你的app0和app1需要能够同时访问同一段eeprom空间(linker文件中所定义的起始地址/长度均相同),在编译之前需要保证app0和app1对这段空间的初始化值保持一致,同时保证各自所定义段的长度一致(如果没有自定义段,可以忽略)。

如果app0和app1需要定义不同的eeprom数据,可以划分eeprom空间为两段分别供app0/app1使用,但不能互交叉访问。

同一个app内,两个核的访问也要注意相同的问题。

在原帖中查看解决方案

0 点赞
1 回复
ShipingW_81
Moderator
Moderator
Moderator
500 replies posted 250 solutions authored 250 replies posted

如果你的app0和app1需要能够同时访问同一段eeprom空间(linker文件中所定义的起始地址/长度均相同),在编译之前需要保证app0和app1对这段空间的初始化值保持一致,同时保证各自所定义段的长度一致(如果没有自定义段,可以忽略)。

如果app0和app1需要定义不同的eeprom数据,可以划分eeprom空间为两段分别供app0/app1使用,但不能互交叉访问。

同一个app内,两个核的访问也要注意相同的问题。

0 点赞