diff options
author | Paul Fertser <fercerpav@gmail.com> | 2013-09-28 14:23:15 +0400 |
---|---|---|
committer | Andreas Fritiofson <andreas.fritiofson@gmail.com> | 2014-08-11 21:25:56 +0000 |
commit | c7384117c66e8f18896ca09ab8095d6da16bb1e5 (patch) | |
tree | 2513a1c61d2d8c6d92171a238281189ca3962f4a /src/jtag/hla/hla_interface.c | |
parent | f701c0cbeb346df4cda378d3b4d5136aabba3b37 (diff) |
Allow transports to override the selected target (hla configs unification)
This should allow to share common configs for both regular access and
high-level adapters.
Use the newly-added functionality in stlink and icdi drivers, amend
the configs accordingly.
Runtime-tested with a TI tm4c123g board.
Change-Id: Ibb88266a4ca25f06f6c073e916c963f017447bad
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
[gus@projectgus.com: context-specific deprecation warnings]
Signed-off-by: Angus Gratton <gus@projectgus.com>
[andrew.smirnov@gmail.com: additional nrf51.cfg mods]
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Tested-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>
Reviewed-on: http://openocd.zylin.com/1664
Tested-by: jenkins
Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
Diffstat (limited to 'src/jtag/hla/hla_interface.c')
-rw-r--r-- | src/jtag/hla/hla_interface.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/jtag/hla/hla_interface.c b/src/jtag/hla/hla_interface.c index a33be54b..964b0744 100644 --- a/src/jtag/hla/hla_interface.c +++ b/src/jtag/hla/hla_interface.c @@ -145,6 +145,35 @@ int hl_interface_init_reset(void) return ERROR_OK; } +static int dummy_khz(int khz, int *jtag_speed) +{ + *jtag_speed = khz; + return ERROR_OK; +} + +static int dummy_speed_div(int speed, int *khz) +{ + *khz = speed; + return ERROR_OK; +} + +static int dummy_speed(int speed) +{ + return ERROR_OK; +} + +int hl_interface_override_target(const char **targetname) +{ + if (hl_if.layout->api->override_target) { + if (hl_if.layout->api->override_target(*targetname)) { + *targetname = "hla_target"; + return ERROR_OK; + } else + return ERROR_FAIL; + } + return ERROR_FAIL; +} + COMMAND_HANDLER(hl_interface_handle_device_desc_command) { LOG_DEBUG("hl_interface_handle_device_desc_command"); @@ -286,4 +315,7 @@ struct jtag_interface hl_interface = { .init = hl_interface_init, .quit = hl_interface_quit, .execute_queue = hl_interface_execute_queue, + .speed = &dummy_speed, + .khz = &dummy_khz, + .speed_div = &dummy_speed_div, }; |