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

am335x wince 有时启动不了 执行OEMCacheRangeFlush 地址是0xc8000000越界启动不了

am335x wince 有时启动不了 执行OEMCacheRangeFlush 地址是0xc8000000越界启动不了

sing vi:

回复 Jian Zhou:

你好没有做过内存测试,他和这个初始化在哪里的代码,可以告诉我吗

Jian Zhou:

回复 sing vi:

在Wince的boot中的DDR初始化代码之后,从0x80000000地址开始加入读写测试代码就可以了。

另外有时启动不了的现象,你用的是DDR3么?有没有做SW leveling?

sing vi:

回复 Jian Zhou:

你好 我用的是ddr2,没有做SW leveling

Jian Zhou:

回复 sing vi:

DDR2不需要SW leveling。

那就试试在boot下把做下DDR的读写测试,如果有问题要检查DDR的寄存器配置。

sing vi:

回复 Jian Zhou:

好的,非常感谢

sing vi:

回复 Jian Zhou:

for( i=0x80000000;i<0x88000000;) { OUTREG32(OALPAtoUA(i), 0x1f2f3f4f); p=OALVAtoPA((UCHAR*)i); OALLog(L"\r\+++++++++++++OALVAtoPA0x%x 0x%x\r\n",i,INREG32(OALPAtoUA(i))); i+=0x1000; }

你好我简单测试了下,打印的是对的我的是128m内存,+++++++++++++OALVAtoPA0x87fff000 0x1f2f3f4f

Jian Zhou:

回复 sing vi:

读写测试做了几个循环?有错误出现么?

sing vi:

回复 Jian Zhou:

你好 做了10次测试,我在eboot里面打印DDR_PHY_BASE_ADDR的很多寄存器的值都是0,写了没有用Cmd_Macro_Config函数的寄存器写了都打印为0

Jian Zhou:

回复 sing vi:

EMIF模块的很多PHY控制寄存器都是只能写不能读的,主要是测试DDR地址空间读入读取是不是一致,并不是测试EMIF模块的寄存器读写。

赞(0)
未经允许不得转载:TI中文支持网 » am335x wince 有时启动不了 执行OEMCacheRangeFlush 地址是0xc8000000越界启动不了
分享到: 更多 (0)