ubuntu 12.04
Jlink v8
Jlink_Linux_v422a.tar.gz[Linux]
J-Link ARM V4.34[Windows]
下载eclipse C/C++版本
http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/keplersr1
安装下面两个插件:
org.eclipse.cdt.cross.arm.gnu_0.5.3.201010141144.zip
zylin embedded CDT
然后创建C工程:
右击项目选择导入->File System->选择uboot源码根目录->finish:
右击工程—>Make Targets->Create->创建三个目标:all、smdk2410_config、distclean。
Make Targets->Build->选择smdk2410_config->Build
Make Targets->Build->all->Build
调试项配置:
选择zylin embedded Debug(Native)
选择ELF可执行文件
'initialize'commands中的内容如下:
target remote localhost:2331
monitor reset
monitor halt
monitor speed 8000
monitor endian little
monitor reg cpsr = 0xd3
monitor memU32 0x53000000 = 0x00000000 #WTCON
#PLL
monitor memU32 0x4C000000 = 0xFFFFFFFF #LOCKTIME
monitor memU32 0x4C000004 = 0x0005C011 #MPLLCON
monitor memU32 0x4C000008 = 0x00038022 #UPLLCON
monitor memU32 0x4C00000C = 0x00FFFFF0 #CLKCON
monitor memU32 0x4C000010 = 0x00000004 #CLKSLOW
monitor memU32 0x4C000014 = 0x00000005 #CLKDIVN
monitor memU32 0x4C000018 = 0x00000000 #CAMDIVN
#MEMCTRL
monitor memU32 0x48000000 = 0x22011110 #BWSCON
monitor memU32 0x48000004 = 0x00000700 #BANK0-5
monitor memU32 0x48000008 = 0x00000700
monitor memU32 0x4800000c = 0x00000700
monitor memU32 0x48000010 = 0x00000700
monitor memU32 0x48000014 = 0x00000700
monitor memU32 0x48000018 = 0x00000700
monitor memU32 0x4800001C = 0x00018005 #BANK6-7
monitor memU32 0x48000020 = 0x00018005
monitor memU32 0x48000024 = 0x008C07A3 #REFRESH
monitor memU32 0x48000028 = 0x000000B1 #BANKSIZE
monitor memU32 0x4800002C = 0x00000030 #MRSRB6-7
monitor memU32 0x48000030 = 0x00000030
break _start
load
#continue
注意:调试之前务必开启JLinkGDBServer