Other Parts Discussed in Thread: CCSTUDIO
Am using 2 debug sessions, 1 for Linux kernel debugging via JTAG and a second for Linux GDB remote applications debugging. Target is 8148EVM PG1.0.
I get into the debug sessions and get the JTAG setup successfully, as well as loading my driver with symbols loaded via a custom GEL script. The GEL script contains all the section addresses of the target driver module. Obviously, this can only be run once the driver module is loaded, so it cannot be used to debug the driver init code. This technique was developed by Raymond Pang, which he adopted from some script code I wrote some time ago for remote GDB debugging using Insight. So once your driver module is loaded (via insmod) you can then run this shell script (with proper arguments) and it will generate a GEL script for you with the proper addresses for each section, which it gets from /sysfs.
Anyway, all this is working Ok. I get my JTAG session going, and then I bring up my remote GDB session as well. The linux app being debugged in GDB issues I/O requests to the driver, and I've got a JTAG breakpoint set in the driver at the entry point to where I/O starts from the application request. The linux application also loads one or more dynamic libraries via dlopen(), I mention it here in case it has any bearing on this problem. When I hit my breakpoint in the driver I'm able to continue debugging via JTAG like it should. But after an indeterminate amount of JTAG debugging CCS just disappears from the screen when I issue a step command.
This is very frustrating because it takes a few minutes to setup each debug session, so my level of productivity isn't too good...;(...
What can I do to help you folks find and fix this bug?