On 04/03/12 19:37, John Dallaway wrote: > However, this success was achieved using arm-eabi-gdb 6.8.50.20080706. > There does appear to be an issue with the length of the 'g' packet when > using the new arm-eabi-gdb 7.3.1: > >> (gdb) tar rem /dev/ttyS0 >> Remote debugging using /dev/ttyS0 >> Remote 'g' packet reply is too long: >> e14e000810000000000000001000000000000000000000000000000000000000000000000000000000000000fccf0d6800000000e8cf0d6895680008e24e00080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021 >> (gdb) > > We will need to look into why the packet length has apparently changed > for Cortex-M targets. I can connect to an ARM7 target using the new GDB > without problem.
This is a mismatch between the number of registers a gdb server reports and the number that gdb expects for the given architecture. In this case too many registers are being reported. IIRC, there should be 8 hex digits for a register, so the above string seems to represent 42 registers instead of the 21 that Cortex-M has. Looks like a bug in the monitor stub code, or perhaps a work around for something broken in older toolchains? Tomas