This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Remote Serial Protocol -- reply to '?' when target running


On 08/09/2016 12:14 PM, Gareth McMullin wrote:
On Wed, Aug 10, 2016 at 5:33 AM, Michael Eager <eager@eagerm.com> wrote:

When gdb connects to a remote target, it asks about
features, and then sends a '?' packet, asking why the
target is stopped.  When the target connection is through
a JTAG pod, the pod may be able to respond to the feature
request, but not be able to determine what the current state of
the target is, likely because it is not stopped.  What should a
JTAG pod reply in this case?

The GDB Remote Protocol doc doesn't seem to be entirely consistent.

The description for '?' is
   Indicate the reason the target halted. The reply is the
   same as for step and continue.

The description for Stop Reply Packet says the following:
   The ‘C’, ‘c’, ‘S’, ‘s’, ‘vCont’, ‘vAttach’, ‘vRun’, ‘vStopped’,
   and ‘?’ packets can receive any of the below as a reply. Except
   for ‘?’ and ‘vStopped’, that reply is only returned when the
   target halts.

This suggests that the target can reply to '?' even if it is not
stopped, which seems to contradict the description for '?'.  But
none of the listed replies seem to be appropriate.  None of the
replies look like "Don't bother me, I'm busy".

How should the JTAG pod respond?  What do most do in this situation?

I can't comment on others, but the Black Magic debug project that I maintain [1]
implements the extended-remote prototcol, and initially responds to
'?' with 'W00' indicating
the target exited (there is no attached target).  The user initiates a
scan for connected
targets with 'monitor jtag_scan' from GDB, and then uses the GDB
'attach' command
to connect, sending the 'vAttach' packet.  This interrupts the target
and the reply comes
back as 'T05'.

[1] https://github.com/blacksphere/blackmagic


Thanks.


--
Michael Eager	 eager@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306  650-325-8077


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]