TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320C6678: SPI flash boot 问题,生成的out文件过大,无法使用工具链进行转换

Part Number:TMS320C6678

尊敬的TI工程师您好:

参考C6678_SPIboot_usersManual.pdf 使用提供的led_play.out成功引导启动

但是自己的工程生成的out文件过大(在6M左右),在运行spiboot.bat执行到b2i2c led_play.btbl led_play.btbl.i2c这一步时

会提示报错Max input array size exceeded

将mcsdk_2_01_02_06\tools\boot_loader\ibl\src\util\btoccs路径下b2ccs.c和b2i2c.c源码中定义的#define SIZE 0x200000   /* max array size */修改后重新生成b2ccs.exe和b2i2c.exe

再次运行spiboot.bat不报错,但是生成的i2crom.ccs没有内容为0kb。

对 mcsdk_2_01_02_06\tools\boot_loader\ibl\src\util\romparse中的romparse.h文件下的#define MAX_DATA_LEN_32bit  32768进行修改后用MinGW重新生成romparse.exe但是生成的i2crom.ccs依旧为0kb,不知道是否需要修改别的地方。

另外有在e2echina.ti.com/…/evm6678le-i2c-nor-flash-boot-spi-flash-boot这篇帖子中看到有人提供了修改过的工具链,可以满足较大二进制文件的转换,但是我好像没有权限下载。

Howl04:

https://e2echina.ti.com/support/processors/f/processors-forum/8065/evm6678le-i2c-nor-flash-boot-spi-flash-boot

帖子的连接

,

Shine:

您可以下载下面帖子里的支持2M的代码https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_DSP_c6678-spi-nor-flash-boot SIZE (1024 * 1024 * 2) /* max array size 2MB */改成6M后,再编译试试。

,

Howl04:

您好,我已经对b2i2c进行了修改并生成了新的exe,但是现在的问题是romparse nysh.spi.map这一步生成的i2crom.ccs没有内容为0kb。

,

Shine:

请问在修改之前,用一个简单的.out文件,可以成功转换么?如果可以的话,在用这个简单的.out文件,在修改后,看是否能生成文件?

,

Howl04:

修改之前使用一个简单的out是可以成功转换的,修改之后再次使用简单的out也可以,使用比较大的out就不行

,

Shine:

Howl04 说:使用比较大的out就不行

2M大的文件行么?

,

Howl04:

最终解决的方法是对 mcsdk_2_01_02_06\tools\boot_loader\ibl\src\util\romparse中的romparse.h文件下的

#define MAX_DATA_LEN_32bit  32768修改为327680,

#define NUM_BOOT_PARAM_TABLES   8修改为80.

用MinGW重新生成romparse.exe解决问题。

,

Shine:

非常感谢解决办法!

赞(0)
未经允许不得转载:TI中文支持网 » TMS320C6678: SPI flash boot 问题,生成的out文件过大,无法使用工具链进行转换
分享到: 更多 (0)