Date: Sat, 17 Mar 2012 16:52:34 +0800
From: Hui Zhu<hui_zhu@mentor.com>
CC: Stan Shebs<stan_shebs@mentor.com>
This is patch for the doc about ReportAsync.
Thanks.
+The @value{GDBN} remote serial protocol includes @dfn{reportasync},
+packets that the stub can report status or do an operation in any time.
I don't understand the "do an operation in any time" part. What does
it mean in practice?
When the stub wants to send a @samp{reportasync} packet, it first sends
a handshake packet @samp{^} to @value{GDBN}.
+If @value{GDBN} reply a @samp{^}, the shake hands is successful.
If @value{GDBN} replies with a @samp{^}, the handshake is successful.
+If not, the shake hands is fail and this packet need to be handle
+as a simple packet.
If not, the handshake fails, and the @samp{reportasync} packet needs
to be handled as a simple packet.
+After shake hands, the stub can send packet to @value{GDBN}, the packet
+format is same with simple remote serial protocol.
After the handshake, the stub can send @samp{reportasync} packets to
@value{GDBN}, using the same packet format as in simple remote serial
protocol.
Is this only for the failed handshake? If so, perhaps we need to tell
what happens when the handshake succeeds.