summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTat-Chee Wan (USM)2011-01-12 15:53:31 +0800
committerTat-Chee Wan (USM)2011-01-12 15:53:31 +0800
commiteec175220428b9d63534086fbc05c72b01378acd (patch)
tree9720b0358730c5d5c6527dc73ebf4ce9df40f006
parent209f5e7bdc2ded21191bbc39fb6756f37e4680cf (diff)
updated breakpoint waitcmd routine due to change in debug_comm
-rw-r--r--Debugger/debug_stub.S11
1 files changed, 5 insertions, 6 deletions
diff --git a/Debugger/debug_stub.S b/Debugger/debug_stub.S
index 8b74141..508b619 100644
--- a/Debugger/debug_stub.S
+++ b/Debugger/debug_stub.S
@@ -469,12 +469,11 @@ dbg__bkpt_offset_outofrange:
*
****************************************************************************/
dbg__bkpt_waitCMD:
-1: bl dbg__hasDebugMsg /* Check for messages */
- beq 1b /* Busy wait */
- bl dbg__getDebugMsg /* Read new message from Debugger, message buffer addr in R0, NULL if error */
- teq r0, #0
- moveq r0, #MSG_ERRCHKSUM /* Message invalid, checksum error? */
- beq _dbg__cmdError /* Send response to GDB server */
+1: bl dbg__getDebugMsg /* Read new message from Debugger, message buffer addr in R0, NULL if error */
+ cmp r0, #0
+ beq 1b /* No message yet, keep checking */
+ movlt r0, #MSG_ERRCHKSUM /* Message invalid, checksum error? */
+ blt _dbg__cmdError /* Send response to GDB server */
/* Message now has $<packet info>\0 */
mov r4, r0 /* Use R4 as Message Buffer pointer */
ldrb r0, [r4], #1 /* Look for '$' */