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

dm6446 RBL不能启动NAND里UBL的悲催问题

做的DM6446板子死活启动不了UBL,先以为不支持K9F1G08U0B,换了支持ONFI的MT29F1G08还是不行。没办法硬着头皮啃了几天RBL反汇编,最后终于找到原因。由于UBL必须小于14k,读到UBL信息后有个比较:
    5a4c:    e0000a9c     mul    r0, ip, sl
    5a50:    e3500b0e     cmp    r0, #14336    ; 0x3800
    5a54:    2a000031     bcs    0x5b20; 就这个跳转指令错了,怎么会用bcs?!bcs这是根据进位来判断是否跳转啊,刚好这个时候C=1,直接跳出来了。
比较了一下开发板上的DM6446里的RBL,相差非常大。找到相关指令:
    52f4:    e0000c96     mul    r0, r6, ip
    52f8:    e3500b0e     cmp    r0, #14336    ; 0x3800
    52fc:    8a000080     bhi    0x5504
这里用的bhi就是对的了。
这种问题真要搞死人啊!
有问题的批号是:
$7C-ICA06HW
TM320DM6446BZWT8
189
没问题的是:
$NA-06A15FW
TMS320DM6446AZWTA
我只知道DM6446A和DM6446B,谁知道这些第一行生产批号的含义?

Eason Wang:

批号的确不同,RBL是有差异的。

请看文档

http://www.deyisupport.com/files/m/davinci_digital_media_processors/3261.aspx

以及类似的问题:

http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/p/22898/76881.aspx#76881

Eason Wang:

回复 Eason Wang:

http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/t/23785.aspx

Jianjun Zhang1:

回复 Eason Wang:

那两个贴子我看过了。A与B的区别我清楚,但不应该有指令用错了的bug啊。我怀疑是废片流到市场上来了,所以想让TI的人看看批号。

Jianjun Zhang1:

回复 Jianjun Zhang1:

新买了批号为$NA-34AQJW的TMS320DM6446AZWT启动正常。读RBL与$NA-06A15FW的TMS320DM6446AZWTA相同。 谁手头上有DM6446的板子,读一下0x4000开始的2048words(8192字节),保存为bin,传上来比较一下?

TI的技术人员能否帮忙确认一下这个bug出现的范围有多大?要不然就不敢用TMS320DM6446BZWT8的片子了!

Jianjun Zhang1:

回复 Jianjun Zhang1:

有TI的员工看到吗?这类问题向哪提?

Tuff Li:

回复 Jianjun Zhang1:

芯片版本的含义请参考DM6446 Errata(可以在DM6446的网页上下载)

关于DM6446 RBL的更新,请参考

http://processors.wiki.ti.com/index.php/Determining_compatibility_between_ROM_Bootloader_%28RBL%29_and_Raw_NAND_devices

DM6446 2.3版本之后,UBL是有大小限制,最新的DM6446 PSP已经支持了2.3版本

http://processors.wiki.ti.com/index.php/DaVinci_%28ARM9%29_PSP_Releases#DM644x

Jianjun Zhang1:

回复 Tuff Li:

这个文档早就看过了。关键问题是那个错误的BCS指令导致NAND启动过程退出。我需要你们帮忙确认这个bug,并且了解一下哪些批次有这个bug,修正了没有。

Tuff Li:

回复 Jianjun Zhang1:

我们这边有客户用DM6446 2.3版本的,没有遇到类似问题,我们内部先研究一下回复你

Tuff Li:

回复 Tuff Li:

你是通过仿真器把RBL读出来的吗? 

fan chuankang:

也是同样问题。完全一样!

后来这个问题解决了么?

赞(0)
未经允许不得转载:TI中文支持网 » dm6446 RBL不能启动NAND里UBL的悲催问题
分享到: 更多 (0)