原文出自:http://www.amobbs.com/forum.php?mod=viewthread&tid=4579114
其实RTT的mini2440分支已经实现了这种做法,这里只是扩充了一下
环境:
1.u-boot-1.3.4
2.arm-linux-gcc-4.1.1-920t
3.AT91RM9200
前提:
已经架好samba并映射盘符,而且u-boot-1.3.4放在此盘,一下操作都在windows下
正文:
修改Makefile 增加生成u-boot.axf代码 如图所示

(原文件名:1.jpg)
现在linux下make就可以生成u-boot.axf了
去http://www.realview.com.cn/down-class.asp下载自己所属的工程例子,因为这些例子可以直接在SDRAM上调试, 例如AT91RM9200 可以下载“基于AT91RM9200的BasicIdle程序”这个例子,S3C2440的可以下载“基于S3C2440的LED程序”.复制xxx.Uv2 xxx.opt 以及Ext_RAM.ini 到u-boot目录下,现在u-boot目录应该有下面文件

(原文件名:2.jpg)
打开xxx.Uv2 ,把本来的工程文件全部删除并选在外部SDRAM调试.

(原文件名:3.jpg)
进入选项卡,修改输出文件为当前目录下的u-boot.axf.

(原文件名:4.jpg)
打开u-boot.map,记录.text 以及 .bss的位置
.text 0x21f00000 0x169bc
.bss 0x21f1c600 0x1d088
修改RO 以及 RW 既是
把

(原文件名:5.jpg)
修改为:

(原文件名:6.jpg)
打开Ext_RAM.ini,把原本的RO BASE(0x20000000)改为新的.text(0x21f00000)
并且修改调试所加载的文件为当前目录的u-boot.axf

(原文件名:7.jpg)
如无意外,已经可以调试了

(原文件名:8.jpg)
但是全是汇编,解决方法很简单,就是你想调试哪个文件就将那文件添加进工程.毫无疑问现在应该添加start.S,看图

(原文件名:9.jpg)
再把添加board.c添加进去,下断运行.

(原文件名:10.jpg)
现在就方便多了,在windows下修改文件,然后linux下make,再按一下MDK的Debug按钮.顺心,方便,不折腾,不纠结.
只是介绍了一种方法,希望能起到抛砖引玉的作用,按这个方法也应该调试linux,good luck!
此文pdf:
点击此处下载 ourdev_618725IRD0FN.pdf(文件大小:1.51M) (原文件名:u-boot.pdf)