X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Fjtag%2Fhla%2Fhla_interface.c;h=ce914ea0c52204f9fefaa9481ba38c038ade791f;hp=964b074423db4ab1443a6d887babfd987f6154e7;hb=1f6a66ab7fca983a3cffd4070c42ae965d0fc6cb;hpb=44394c2a77f68785e2ec87e2245d0f1624086682 diff --git a/src/jtag/hla/hla_interface.c b/src/jtag/hla/hla_interface.c index 964b074423..ce914ea0c5 100644 --- a/src/jtag/hla/hla_interface.c +++ b/src/jtag/hla/hla_interface.c @@ -268,6 +268,21 @@ COMMAND_HANDLER(interface_handle_trace_command) return ERROR_OK; } +COMMAND_HANDLER(interface_handle_hla_command) +{ + if (CMD_ARGC != 1) + return ERROR_COMMAND_SYNTAX_ERROR; + + if (!hl_if.layout->api->custom_command) { + LOG_ERROR("The selected adapter doesn't support custom commands"); + return ERROR_FAIL; + } + + hl_if.layout->api->custom_command(hl_if.handle, CMD_ARGV[0]); + + return ERROR_OK; +} + static const struct command_registration hl_interface_command_handlers[] = { { .name = "hla_device_desc", @@ -304,6 +319,13 @@ static const struct command_registration hl_interface_command_handlers[] = { .help = "configure trace reception", .usage = "source_lock_hz [destination_path]", }, + { + .name = "hla_command", + .handler = &interface_handle_hla_command, + .mode = COMMAND_EXEC, + .help = "execute a custom adapter-specific command", + .usage = "hla_command ", + }, COMMAND_REGISTRATION_DONE };