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

am3352 ELM问题咨询

版本 sdk6

偶然情况下发现uboot中使用下面2种方式烧录uboot.img

1,nandecc hw 2

2,nandecc sw

发现MLO读取uboot时候,竟然都不会报ecc错误

MLO中使用BCH8,就是说nandecc sw烧写uboot的时候,应该会有ecc错误的,但是没有。

所以就去看ecc校准的代码,这里就牵扯到了ELM

校准代码中,ecc_code oob中存储的ecc数据,ecc_calc 读取nandflash中数据的时候,新生成的ecc

这里仅仅就是判断了一下ecc_code是不是都是0xff,然后就丢弃了,

主要操作是将ecc_calc转换后填入了ELM_SYNDROME_FRAGMENT_x寄存器中

最后经过ELM_ERROR_LOCATION_x寄存器就可以知道错误的bit及位置。

在不需要oob中ecc数据的情况下,ELM是怎么知道数据有bit错误的呢?

Thanks!

Jian Zhou:

你那个版本的U-boot应该是比较老的,SW应该是空设置:
processors.wiki.ti.com/…/AM335x_U-Boot_User's_Guide

赞(0)
未经允许不得转载:TI中文支持网 » am3352 ELM问题咨询
分享到: 更多 (0)