projects
/
fw
/
openocd
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
target: increase chunk size in dump_image
[fw/openocd]
/
src
/
target
/
target_request.c
diff --git
a/src/target/target_request.c
b/src/target/target_request.c
index d22b8a2b9e7447cabd838bc008e2531f309176f9..090de9fe64f45ba0b37a6af302db63ec739baf39 100644
(file)
--- a/
src/target/target_request.c
+++ b/
src/target/target_request.c
@@
-36,6
+36,15
@@
#include "trace.h"
#include "trace.h"
+static bool got_message = false;
+
+bool target_got_message(void)
+{
+ bool t = got_message;
+ got_message = false;
+ return t;
+}
+
static int charmsg_mode = 0;
static int target_asciimsg(struct target *target, uint32_t length)
static int charmsg_mode = 0;
static int target_asciimsg(struct target *target, uint32_t length)
@@
-118,6
+127,9
@@
int target_request(struct target *target, uint32_t request)
{
target_req_cmd_t target_req_cmd = request & 0xff;
{
target_req_cmd_t target_req_cmd = request & 0xff;
+ /* Record that we got a target message for back-off algorithm */
+ got_message = true;
+
if (charmsg_mode) {
target_charmsg(target, target_req_cmd);
return ERROR_OK;
if (charmsg_mode) {
target_charmsg(target, target_req_cmd);
return ERROR_OK;
@@
-156,7
+168,7
@@
static int add_debug_msg_receiver(struct command_context *cmd_ctx, struct target
struct debug_msg_receiver **p = &target->dbgmsg;
if (target == NULL)
struct debug_msg_receiver **p = &target->dbgmsg;
if (target == NULL)
- return ERROR_
INVALID_ARGUMENTS
;
+ return ERROR_
COMMAND_SYNTAX_ERROR
;
/* see if there's already a list */
if (*p)
/* see if there's already a list */
if (*p)
@@
-182,11
+194,9
@@
static int add_debug_msg_receiver(struct command_context *cmd_ctx, struct target
static struct debug_msg_receiver* find_debug_msg_receiver(struct command_context *cmd_ctx, struct target *target)
{
int do_all_targets = 0;
static struct debug_msg_receiver* find_debug_msg_receiver(struct command_context *cmd_ctx, struct target *target)
{
int do_all_targets = 0;
- struct debug_msg_receiver **p = &target->dbgmsg;
/* if no target has been specified search all of them */
/* if no target has been specified search all of them */
- if (target == NULL)
- {
+ if (target == NULL) {
/* if no targets haven been specified */
if (all_targets == NULL)
return NULL;
/* if no targets haven been specified */
if (all_targets == NULL)
return NULL;
@@
-195,8
+205,9
@@
static struct debug_msg_receiver* find_debug_msg_receiver(struct command_context
do_all_targets = 1;
}
do_all_targets = 1;
}
- do
- {
+ /* so we target != null */
+ struct debug_msg_receiver **p = &target->dbgmsg;
+ do {
while (*p)
{
if ((*p)->cmd_ctx == cmd_ctx)
while (*p)
{
if ((*p)->cmd_ctx == cmd_ctx)
@@
-291,7
+302,7
@@
COMMAND_HANDLER(handle_target_request_debugmsgs_command)
}
else
{
}
else
{
-
command_print(CMD_CTX, "usage: target_request debugmsgs ['enable'|'disable'|'charmsg']")
;
+
return ERROR_COMMAND_SYNTAX_ERROR
;
}
}
}
}
@@
-303,10
+314,10
@@
COMMAND_HANDLER(handle_target_request_debugmsgs_command)
static const struct command_registration target_req_exec_command_handlers[] = {
{
.name = "debugmsgs",
static const struct command_registration target_req_exec_command_handlers[] = {
{
.name = "debugmsgs",
- .handler =
&
handle_target_request_debugmsgs_command,
+ .handler = handle_target_request_debugmsgs_command,
.mode = COMMAND_EXEC,
.mode = COMMAND_EXEC,
- .help = "
set
reception of debug messages from target",
- .usage = "
(enable|disable)
",
+ .help = "
display and/or modify
reception of debug messages from target",
+ .usage = "
['enable'|'charmsg'|'disable']
",
},
COMMAND_REGISTRATION_DONE
};
},
COMMAND_REGISTRATION_DONE
};
@@
-315,6
+326,7
@@
static const struct command_registration target_req_command_handlers[] = {
.name = "target_request",
.mode = COMMAND_ANY,
.help = "target request command group",
.name = "target_request",
.mode = COMMAND_ANY,
.help = "target request command group",
+ .usage = "",
.chain = target_req_exec_command_handlers,
},
COMMAND_REGISTRATION_DONE
.chain = target_req_exec_command_handlers,
},
COMMAND_REGISTRATION_DONE