aboutsummaryrefslogtreecommitdiff
path: root/src/target/target_request.c
diff options
context:
space:
mode:
authorSpencer Oliver <spen@spen-soft.co.uk>2013-08-02 12:57:30 +0100
committerSpencer Oliver <spen@spen-soft.co.uk>2013-09-08 16:12:27 +0000
commit854a11422124bd1a417729f0cbfd40737a06d164 (patch)
tree9e9062f50dfa1a69e38ca19d92d3e86bf70b0d04 /src/target/target_request.c
parent9e02c99d7b2eba0988ab17a9af8b95b5fe065c5e (diff)
target: check target supports target_request_data
Make sure the target support target requests before we enable any receivers. Change-Id: I8ce42922eaff76fb5e7a114da716f2a6585a6ab5 Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk> Reviewed-on: http://openocd.zylin.com/1536 Tested-by: jenkins Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
Diffstat (limited to 'src/target/target_request.c')
-rw-r--r--src/target/target_request.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/target/target_request.c b/src/target/target_request.c
index 2b09df66..df2fc34e 100644
--- a/src/target/target_request.c
+++ b/src/target/target_request.c
@@ -122,6 +122,8 @@ int target_request(struct target *target, uint32_t request)
{
target_req_cmd_t target_req_cmd = request & 0xff;
+ assert(target->type->target_request_data);
+
/* Record that we got a target message for back-off algorithm */
got_message = true;
@@ -256,6 +258,11 @@ COMMAND_HANDLER(handle_target_request_debugmsgs_command)
int receiving = 0;
+ if (target->type->target_request_data == NULL) {
+ LOG_ERROR("Target %s does not support target requests", target_name(target));
+ return ERROR_OK;
+ }
+
/* see if reciever is already registered */
if (find_debug_msg_receiver(CMD_CTX, target) != NULL)
receiving = 1;