你好:
我使用的芯片是DM8127,是自己做的的板子,原理图见附件《DM8127原理图.pdf》。购买的开发板是广州创龙公司的DM8148开发板(软件开发包是广州创龙从TI8148开发板的开发包上改的)。
由于我自己板子的DM8127只使用了DDR0接口,没有使用DDR1,所以我修改了u-boot\arch\arm\include\asm\arch-ti81xx\ddr_def_ti814x.h文件,具体修改内容如下:
- 第300行,#define DDR3_EMIF_SDRAM_CONFIG 0x61C11B32 改为:
#define DDR3_EMIF_SDRAM_CONFIG 0x61C11A32 //RowAddress A0-A13
2. 第321行,#define PG2_1_DMM_LISA_MAP_3 0x80740300 改为:
#define PG2_1_DMM_LISA_MAP_3 0x80700300 //No interleaving模式
然后重新编译u-boot,生成新的MLO和u-boot.bin,替换了开发板原配SD卡中的对应文件。
将这张SD卡插到我的板子后,上电,串口终端在booting the kernel后卡住不动了,如下图所示:
经过在内核start_kernel函数中添加打印信息,发现在调用schedule()函数后就卡住了,请问能帮我分析一下问题可能出在哪里吗?
我这个SD卡插在创龙开发板上是可以正常启动的。
Shine:
请问有没有参考过下面的wiki网站?http://processors.wiki.ti.com/index.php/Kernel_-_Common_Problems_Booting_Linux#Problem_.232_-_No_more_output_is_seen_on_the_console_after_.22booting_the_kernel.22另外试试降低DDR主频看能否起来?
user5000247:
回复 Shine:
你好,看了Wiki网站后,应该可以排除bootargs变量和Mis MechineID不匹配的原因。
如果要降低DDR的频率,请问需要改哪些地方呢,另外降到多少比较合适呢?谢谢。
user5000247:
回复 user5000247:
另外,我当前的DDR工作频率为默认的400MHz,我使用的DDR3-1600芯片,当前工作频率是不是已经很低了?最低你建议配到多少呢?
user5000247:
回复 user5000247:
你好,我已经试过了,DDR3使用333M 400M 533M频率跑都会卡住