Joe, Try adding this to your configuration file
#---- gdb_memory_map enable #---- This tells openocd to inform GDB where 'flash lives' - thus GDB will attempt to use hardware breakpoints. ==== You are also not paying attention to what GDB is telling you - when it "cannot find the bounds of the current function" - not much is going to work.. This is very true of the command "step" - which - is a *source*level* step. Read back through what I told you about how GDB steps ... if the current PC is not within the bounds of your code - GDB has no way to figure out how to "STEP" - it can - however "stepi" - which is an instruction step, but *you* the human need to type "stepi" - not "step". =========================== I start GDB - without a configuration file, and type various commands - below is a transcript of what I am typing with embedded comments. I am using an atmel at91sam3u4E chip on a SAM3U-EK eval board, I do not have a Luminary Micro - however both are cortex-M3 parts. =========================== [du...@borgcube basic-internalflash-project]$ ../../../install/bin/arm-none-eabi-gdb GNU gdb (GDB) 6.7.50.20080107-cvs Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-none-eabi". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. =========================== I did not specify a CONFIG file on the command-line and I did not specify an ELF file on the command line. therefore I must type commands and specify the ELF file I want to debug. =========================== ===== Specify the ELF file... ===== (gdb) file ./bin/basic-internalflash-project-at91sam3u-ek-at91sam3u4-flash.elf Reading symbols from /home/duane/cortex/b/basic-internalflash-project-at91sam3u-ek/basic-internalflash-project/bin/bas ic-internalflash-project-at91sam3u-ek-at91sam3u4-flash.elf...done. ===== Specify the target ===== (gdb) target remote 192.168.0.100:3333 Remote debugging using 192.168.0.100:3333 0x00000000 in ?? () ===== Tell openocd to HALT the target ===== (gdb) mon halt ===== Tell openocd to RESET the target. ===== (gdb) mon reset JTAG tap: sam3.cpu tap/device found: 0x4ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x4) JTAG Tap/device matched ===== And i tell it to halt again... ===== (gdb) mon halt target state: halted target halted due to debug-request, current mode: Handler BusFault xPSR: 0x21000005 pc: 0x000817dc ===== Load my program - this actually programs the flash ===== (gdb) load Loading section .fixed, size 0x133c lma 0x80000 Loading section .relocate, size 0xf4 lma 0x8133c Start address 0x811dc, load size 5168 Transfer rate: 4 KB/sec, 2584 bytes/write. ===== Set a breakpoint at "main()" ===== (gdb) break main Breakpoint 1 at 0x800c0: file main.c, line 168. ===== Tell GDB to continue - see the NOTE from GDB... ===== (gdb) cont Continuing. Note: automatically using hardware breakpoints for read-only addresses. ===== I hit my breakpoint.. ===== Breakpoint 1, main () at main.c:168 168 TRACE_CONFIGURE(DBGU_STANDARD, 115200, BOARD_MCK); (gdb) ===== Works for me :-) ===== -Duane. _______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development