使用Eclipse与jLink V8调试Exynos 4412 u(2)

# connect to the J-Link gdb server
target remote localhost:2331
# Reset the target
monitor reset
monitor sleep 10
# Setup GDB for faster downloads
#set remote memory-write-packet-size 1024
set remote memory-write-packet-size 4096
set remote memory-write-packet-size fixed
monitor speed 12000
load
break _start

NewImage

还需要设置一下源码目录,否则调试时候会提示找不到源码文件:

NewImage

4、启动gdb-server

注意:每次调试之前需要保证4412的CPU处于halt状态。

方法:板子启动后,uboot读秒结束之前按任意键使4412进入uboot界面,而不是启动内核,启动内核后jlink可能无法使4412暂停住。

NewImage

打开JLinkExe,CPU会被成功识别,这一步至关重要,不能识别CPU的话可能是由于jlink固件版本过低,或者硬件连接有问题。

NewImage

我们使用halt命令停止CPU:

NewImage

退出JLinkExe。

打开JLinkGDBServer,成功的话,会显示等待gdb连接:

NewImage

5、回到eclipse执行调试

直接点击小虫子开始Debug

寄存器的值被成功读出,可以进行单步调试了,enjoy。

NewImage

 

需要解决的问题:

1、在这里我没有认真研究gdb的初始化命令,现在只是可以运行,还需要进行进一步修改。

2、代码的运行地址好像有问题,gdb-server总是提示无法读取某些位置,等检查一下源码,重定位代码后再试。

3、可能需要在调试阶段对CPU进行降频处理,否则jlink很可能会停不住CPU(经验判断)。

4、最担心的问题还是jlink v8能否完美支持A9的调试,但至今还未发现问题。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/192b2813baee5ad69159a6891421cafe.html