手机在于折腾,历时5个月终于救回来了!

经历了5个月的研究,终于把我的手机救回来了。

之前的分析结果是正确的,PXA300启动过程是要加载NTIM,OBM,EBOOT,IPL。

不过这样是不能开机的,因为缺少EBOOTCFG,也就是EBOOT的启动参数,而这个启动参数却不包含在刷机ROM文件之中。

这就是导致我怎么折腾都不能启动的原因!

疑问就是这个启动参数不在ROM文件内,那它是怎么生成的呢?其内容也不会因为刷机而改变,那估计只能是厂家出厂的时候写进去的吧。

为了得到这个启动参数的内容,我在淘宝找到一个类似我手机的主板PXA310的,一个二手主板,拿回家用JTAG读Flash。

果然读到了128KB的EBOOTCFG,这里面的内容在ROM文件里是查不到的,我把这128KB写到我手机主板的FLASH里面,插上电池…

终于让我看到了久违的开机画面啊!!!太兴奋了啊,为了这个手机我花了多少的心血!

不过此时还是启动不了,因为NK部分已经残缺不全,不过这个问题很容易啦,重新进入USB Update Mode,刷入之前能用的ROM。OK

一切搞定!!!

在此保存一下研究结果,方便以后查询:

1、Nand存储结构:

Nand大小:256MB

共2048个块,块大小:128KB

起始地址
长度
内容
0x00000 0x20000 NTIM
0x20000 0x20000 OBM
0x40000 0x40000 EBOOT
0x80000 0x20000 IPL
0xA0000 0x20000 EBTCFG
0xC0000 0x60000 LOGO
0x120000 —— MBR

2、主板JTAG接口

从2013-01-01到今日2013-05-05整整5个月,我早已买了Android手机,面对这个旧手机,似乎有种物是人非的感觉啊。