关于VxWorks BSP for PowerPC的问题

[复制链接]
3997|14
 楼主| sunwind45 发表于 2008-4-15 17:46 | 显示全部楼层 |阅读模式
我在调试BSP for MPC862.
没有模板,就借用一个MPC860的.
修改了我认为要修改的,作了个bootrom.

下到FLASH里,出了点问题:
在启动时,boot区没有映射到0x100这个地址.
我改PC指针到FLASH,可以跑,也把boot程序搬到RAM里了(在debug环境).

也不晓得哪里出了问题.
看资料,没有那么多时间,太急了.
哪位老大指点下,谢谢!
armecos 发表于 2008-4-15 18:43 | 显示全部楼层

你可以参考下列文档,

VxWorks在EasyARM2200和SmartARM2200上的移植等系列**。

PowerPC和ARM的移植差不多,模板和汇编不一样罢了,可能是你的某个配置文件里的地址有问题或者汇编重映射有问题,都是很简单的小问题,你一步步调试就知道哪里出错了。
后学 发表于 2008-4-15 22:26 | 显示全部楼层

re

有bdi 2000吗?单步跟一下。。。
 楼主| sunwind45 发表于 2008-4-16 11:02 | 显示全部楼层

非常感谢

看来还得好好看看!

我使用的调试软件是CodeWarrior,
在ROM Version环境下,启动后,能够看到0x100映射到了bootFLASH ;
但在Debug Version,则没有.

使用买的目标板,没有这个问题.

开始以为是硬件复位字出了问题,但是检查了,好象没问题(只能这样认为).

郁闷!
后学 发表于 2008-4-16 11:48 | 显示全部楼层

BGA的芯片,坏了就得重新做板,刚开始做的时候比较痛苦,

 楼主| sunwind45 发表于 2008-4-17 10:20 | 显示全部楼层

这个问题解决了,还是调试软件不是很熟悉

把初始化脚本文件去掉,就可以了.

但是,还是有问题.
应该是romInit()里对SDRAM初始化不正确,因为写不进去东西.

之前,在没有调试bsp以前,使用初始化脚本文件,对sdram初始化是成功的.
但是,把upm表移到romInit()里,好象有问题.
在romInit()里,还有个sdram上电初始化upm表,这个表在之前没用过.

郁闷!
SDRAM:MT48LC2M32
老大帮帮忙
后学 发表于 2008-4-17 12:00 | 显示全部楼层

re

看来初始化脚本里的upm表是可用的,

查下rominit的程序吧,
调试powerpc,有个bdi仿真器是很必要的,
 楼主| sunwind45 发表于 2008-4-18 09:03 | 显示全部楼层

唉,还是对SDRAM操作不正确

如果对SDRAM操作不正确,应该问题就是出在romInit()这里吧???

这个程序看了几遍,好象除了初始化几个寄存器,其他都是在对SDRAM初始化.

也看不出哪里出了问题.

我们有个仿真器,POWERTAP.

也单步跟了,没发现哪个地方出了问题.寄存器都写的很正确.我一直觉得是上电用的那个小UPM表出了问题,改了几次,没效果!

郁闷!
wuheelht 发表于 2008-4-20 15:40 | 显示全部楼层

可以看看

可以看看romInit.s中的SDRAM的BR,OR配对没有,还要看看MAKEFILE和CONFIG.H中相关的SDRAM地址是否配置正确
wuheelht 发表于 2008-4-20 15:44 | 显示全部楼层

可以把romInit.s中的UPM表改成初始化脚本中的UPM

 楼主| sunwind45 发表于 2008-4-21 10:10 | 显示全部楼层

初始化脚本文件里没有上电初始化这个upm表

初始化脚本文件里没有上电初始化这个upm表,我现在还没搞清楚CodeWarrior是怎么对SDRAM初始化的,它的初始化脚本文件里只有个时序UPM表;可是对我的SDRAM初始化到是挺成功.
现在就是困惑:为什么我用bsp就不行,里面的参数都是我用codewarrior调试成功的,除了那个上电初始化upm表

老大们,这方面的经验给点儿,我很郁闷,都一周了,困在这里了
 楼主| sunwind45 发表于 2008-4-22 15:34 | 显示全部楼层

还有这方面调试经验的高手给点儿建议吗?

自己顶

难道硬件还有特别需要注意的地方?

硬件已经通过 CodeWarrior 和仿真器 测试过了,SDRAM使用很正常;
为什么使用bsp,就会有这样的问题了?

搞不懂!
 楼主| sunwind45 发表于 2008-4-23 10:28 | 显示全部楼层

还有高手给点建议吗?

顶一下.
感觉进了死胡同了

 楼主| sunwind45 发表于 2008-4-24 09:13 | 显示全部楼层

问题解决了,非常感谢大家给予的帮助

经验主义害死人啊!
我原来是按照买来的mpc860目标板的bsp修改的.它的sdram upm表是分成两次完成的.首先是上电初始化的那个表,写进去,执行;接着是时序upm表.
我按照它的这个做法,不成;现在也不是很清楚为什么!
实在没招了,还是按照freescale的文档,把上电初始化的upm表放到时序upm表里.然后,把表写到upm里,执行上电初始化,...
没想到这样就可以了,
呵呵

原因不清楚,问题却解决了

唉,苦闷的一周
 楼主| sunwind45 发表于 2008-6-1 18:00 | 显示全部楼层

现在发现,sdram确实接错了,

粗心大意,把字节选择接反了。

奶奶的,还得怪freescale的芯片管脚定义比较怪异。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

74

主题

178

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部