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.

ti-processor-sdk-linux-rt-am335x-evm-04.01.00.06版本sdk uboot启动异常

Other Parts Discussed in Thread: AM3352

如题,使用ti-processor-sdk-linux-rt-am335x-evm-04.01.00.06版本sdk,cpu为am3352.

这两天移植该sdk时,通过串口加载u-boot-spl.bin始终无任何打印,使用prebuilt-images中的MLO,截掉头后改为u-boot-spl.bin加载也是同样的情况。

艰难定位,终于发现uboot在启动到一半时挂死了。

具体挂死点为:

common/spl/spl.c,board_init_r函数,调用enable_caches处。屏蔽enable_caches调用,程序即可正确运行,直到在spl_board_init中进行串口输出。

问题点找到了,直接屏蔽enable_caches肯定不是恰当的办法,于是根据enable_caches编译宏CONFIG_SYS_ICACHE_OFF和CONFIG_SYS_DCACHE_OFF的提示,在make CROSS_COMPILE=arm-linux-gnueabihf- O=my335x menuconfig中,找到ARM architecture -> L2cache off。希望在配置文件中关闭cache。

但是该配置项L2cache off并未起作用,仅修改该配置项后编译的uboot仍然无法加载,检查配置项,也并未找到其他控制cache的选项。

最后,uboot配置文件使用的是自带的am335x_evm_defconfig,但是在执行make CROSS_COMPILE=arm-linux-gnueabihf- O=my335x am335x_evm_defconfig后,用系统导入的.config文件覆盖了。该文件见附件。

不知道问题是否讲明白了,还请ti工程师帮忙看一下该如何解决,不会是发布了一个有问题的sdk吧?

am335x_evm_defconfig.zip
x 出现错误。请重试或与管理员联系。