TI中文支持网
TI专业的中文技术问题咨询交流网站

UART引导第二阶段失败

您好,我在使用通过UART引导时,遇到了如下问题:(使用Teraterm 工具

1、 使用UART下载stage1的u-boot.min.uart可以成功;

2、 当使用UART下载stage2的u-boot.bin,可以成功下载,但是当执行TI_MIN# go 0x81000000命令后,串口终端卡在“Starting application at 0x81000000 …”。如下图所示,请问问题可能出在哪里呢?:

Chris Meng:

你好,

请问你使用的芯片是哪款?DM81xx?

请问你是在你自己板子上测试的么?如果是,uboot里面DDR的参数配置是否有根据你使用的DDR调整过?如果是DM81xx系列参评,DDR SW leveling是否有做过?

user5000247:

回复 Chris Meng:

您好,我是在自己的板子上测得,我使用的是DM8127,我使用的U-BOO是广州创龙的DM8148开发板配套的,采用它默认的DDR配置,DDR CLK时钟配置为400MHz。

另外,请问U-BOOT中哪个文件可以修改DDR的配置?

另外DM81xx系列参评是指什么意思?

 

 

Chris Meng:

回复 user5000247:

你好,

请参考:http://processors.wiki.ti.com/index.php/TI814x-DDR3-Init-U-Boot。

建议你先看看本论坛的置顶资源帖:http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/t/103688.aspx。

user5000247:

回复 Chris Meng:

你好,我在看完TI814x-DDR3-Init-U-Boot后,有以下几个问题:

1、如果要完成SW Leveling,需要用到仿真器,但是我现在没有购买仿真器,请问还有办法做SW Leveling吗?

2、TI814x-DDR3-Init-U-Boot中描写需要 File:DM814x DDR Controller Register Configuration spreadsheet v1.0.zip这个表格,但是后文中并没有使用这个表格计算的数据,请问这个表格我必须要配置吗,配置好的数据放在哪里使用呢?

3、我现在还不太确认我的DDR3访问是否有问题,因为我现在可以成功通过UART进入第一阶段引导,然后再执行mtest指令后,发现返回结果都是失败。但是对少量地址进行读写,又是正确的,这是否说明DDR3访问不稳定呢?

Chris Meng:

回复 user5000247:

YONGXIN YAN1、如果要完成SW Leveling,需要用到仿真器,但是我现在没有购买仿真器,请问还有办法做SW Leveling吗?

目前没有其他的方法。

YONGXIN YAN2、TI814x-DDR3-Init-U-Boot中描写需要 File:DM814x DDR Controller Register Configuration spreadsheet v1.0.zip这个表格,但是后文中并没有使用这个表格计算的数据,请问这个表格我必须要配置吗,配置好的数据放在哪里使用呢?

Uboot里面有相关参数需要修改,请参考:http://processors.wiki.ti.com/index.php/TI814x-DDR3-Init-U-Boot#Register_to_U-Boot_Macro_Definition_Mapping_Table

user5000247:

回复 Chris Meng:

非常感谢!

       我在调试自己板子的DDR3过程中发现,当使用UART把第一阶段引导成功后,我执行mtest指令进行内存测试,发现内存中读写存在一个问题 ,如下图所示:

从地址0x80000000开始,每隔32个双字,就会有32个双字无法访问,读回来的数据都是00000000,我考虑是不是因为我板子上的DSP(DM8127)只使用了DDR[0]端口(该端口接了2片16位的DDR3),DDR[1]端口没有接器件造成的,不知道我分析的对不对?

    如果对,请问如何通过U-BOOT配置DSP,使之仅使用DDR[0]端口工作?谢谢!

user5000247:

回复 user5000247:

你好,问题已经解决,需要把DMM的寄存器Interleveing mode 配置为no interleveing 即可。

赞(0)
未经允许不得转载:TI中文支持网 » UART引导第二阶段失败
分享到: 更多 (0)