JTAG + openocd +内核调试(vmlinux中没有调试信息?)

时间:2012-10-26 09:14:12

标签: kernel jtag openocd

当我从eclipse连接到目标时,我收到消息:

symbol-file /opt/Tixi_Repos/KiwiG6v2/buildroot-2011.05/package_tixi/linux-2.6.39/arch/arm/boot/compressed/vmlinux
target remote localhost:3333
start () at arch/arm/boot/compressed/head.S:108
108         kphex   r5, 8       /* end of kernel */

但是当我停止正在运行的内核时:  0xc06f2674
没有可用于“”

的来源

当我尝试步骤时: 目标请求失败:找不到当前函数的边界。

似乎vmlinux中没有符号。但是内核是重建的,同时设置了DEBUG_KERNEL和DEBUG_INFO。

内核2.6.39 CPU AT91SAM9G25

openocd -f /usr/share/openocd/scripts/interface/jtagkey2.cfg -f /usr/share/openocd/scripts/board/at91sam9g20-ek.cfg


TapName            | Enabled |   IdCode      Expected    IrLen IrCap  IrMask   Instr     
---|--------------------|---------|------------|------------|------|------|------|---------
 0 | at91sam9g20.cpu    |    Y    | 0x00000000 | 0x0792603f | 0x04 | 0x01 | 0x0f | 0x0f
Info : max TCK change to: 30000 kHz
Info : RCLK (adaptive clock speed)
Info : JTAG tap: at91sam9g20.cpu tap/device found: 0x0792603f (mfg: 0x01f, part:0x7926, ver: 0x0)
Info : Embedded ICE version 6
Info : accepting 'gdb' connection from 0
Warn : acknowledgment received, but no packet pending

1 个答案:

答案 0 :(得分:0)

在我的系统中编译了2个不同的vmlinux文件:一个在根文件夹中,另一个在arch / arm / boot / compressed / vmlinux中

https://stackoverflow.com/questions/13155885/two-differend-vmlinux-files