Line 960... |
Line 960... |
//! Handle a RSP query request
|
//! Handle a RSP query request
|
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
void
|
void
|
GdbServerSC::rspQuery ()
|
GdbServerSC::rspQuery ()
|
{
|
{
|
if (0 == strcmp ("qC", pkt->data))
|
if (0 == strcmp ("qAttached", pkt->data))
|
|
{
|
|
// We are always attaching to an existing process with the bare metal
|
|
// embedded system.
|
|
pkt->packStr ("1");
|
|
rsp->putPkt (pkt);
|
|
}
|
|
else if (0 == strcmp ("qC", pkt->data))
|
{
|
{
|
// Return the current thread ID (unsigned hex). A null response
|
// Return the current thread ID (unsigned hex). A null response
|
// indicates to use the previously selected thread. We use the constant
|
// indicates to use the previously selected thread. We use the constant
|
// OR1KSIM_TID to represent our single thread of control.
|
// OR1KSIM_TID to represent our single thread of control.
|
sprintf (pkt->data, "QC%x", OR1KSIM_TID);
|
sprintf (pkt->data, "QC%x", OR1KSIM_TID);
|
Line 1051... |
Line 1058... |
sprintf (pkt->data, "%02x%02x%02x%02x%02x%02x%02x%02x%02x",
|
sprintf (pkt->data, "%02x%02x%02x%02x%02x%02x%02x%02x%02x",
|
'R', 'u', 'n', 'n', 'a', 'b', 'l', 'e', 0);
|
'R', 'u', 'n', 'n', 'a', 'b', 'l', 'e', 0);
|
pkt->setLen (strlen (pkt->data));
|
pkt->setLen (strlen (pkt->data));
|
rsp->putPkt (pkt);
|
rsp->putPkt (pkt);
|
}
|
}
|
|
else if (0 == strncmp ("qTStatus", pkt->data, strlen ("qTstatus")))
|
|
{
|
|
// We don't support tracing, return empty packet
|
|
pkt->packStr ("");
|
|
rsp->putPkt (pkt);
|
|
}
|
else if (0 == strncmp ("qXfer:", pkt->data, strlen ("qXfer:")))
|
else if (0 == strncmp ("qXfer:", pkt->data, strlen ("qXfer:")))
|
{
|
{
|
// For now we support no 'qXfer' requests, but these should not be
|
// For now we support no 'qXfer' requests, but these should not be
|
// expected, since they were not reported by 'qSupported'
|
// expected, since they were not reported by 'qSupported'
|
cerr << "Warning: RSP 'qXfer' not supported: ignored" << endl;
|
cerr << "Warning: RSP 'qXfer' not supported: ignored" << endl;
|