Chinaunix首页 | 论坛 | 博客
  • 博客访问: 919128
  • 博文数量: 96
  • 博客积分: 10071
  • 博客等级: 上将
  • 技术积分: 1118
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-20 17:54
文章分类

全部博文(96)

文章存档

2011年(3)

2010年(3)

2009年(29)

2008年(54)

2007年(7)

分类: WINDOWS

2008-10-22 12:26:03

      OemInit done就死机的其中一个原因
      creator
      sz111@126.com  

      我的系统一直都是在FMD init done后就死机了。一直找不到原因,搞了近10天,最后经过排查,问题出在pcmia.dll地方。要在platform.bib里面去掉才行。最后同时去掉cs8900.dll网卡驱动也才行。
     
     问题解决了,wince也跑出来了。高兴啊。

     一般遇到这种情况,可以在BSP中的Audio,Display,SDMMC,Serial,USB等driver里面加入调试信息看看到底是系统是挂在哪个driver中;但是如果Oeminit结束后没有任何调试信息输出,那初步可以判断不是挂在某一个driver中,由于系统调用Oeminit运行完成之后,会跳回private或public下的代码继续运行一段后再启动device.exe加载各个driver,这一段是微软default代码,基本上不会有问题;如果系统挂在这一部分,那可能的原因有(1)硬件板子出了问题,(2)bootloader load出的image有问题,(3)SDRAM设定的问题。。。 

    另外特别说明一下昨天遇到的问题,我加入一个驱动,执行到oeminit done就死了。
之后恢复到原来没有加入驱动之前的,仍然不行。重新编译也不行,重新安装wince,不行。
重新安装windows,不行。太奇怪了。哪位朋友了解的话,能否回复介绍一下?谢谢了。
   ---------呵呵,这个问题终于找到暂时的解决方案了。
     1.首先编译的时候,如果是build and sysgen current bsp,就不要选择clean before building。
     2.先把以前ok的备份,如果出现不行的时候,要把bsp整个恢复到以前的bsp。然后选择copy file to release dir。然后build。
     具体wince为何有这个问题我也不明原因,期待着其他人详解。

     前几天又遇到一个init之后就死机的问题。发现只要修改fw.s就会死机。最后发现原因是arm下面的map.a的配置有问题。
DCD 0x8C000000, 0x30000000, 32 ; 64 MB DRAM BANK 0, 1
32要改为64就OK了。
阅读(2369) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~