summaryrefslogtreecommitdiff
path: root/src/jtag/drivers
diff options
context:
space:
mode:
authorDavid Brownell <dbrownell@users.sourceforge.net>2010-07-09 18:34:31 -0400
committerDavid Brownell <db@helium.(none)>2010-07-09 18:34:31 -0400
commite8445c9c9f02e82ea417776fa27fbe793ae22f83 (patch)
treeacf0e39eafd022f3d86168db1a355cd3ee5c8951 /src/jtag/drivers
parentac5ad4ad8d0312259974d4aeb947a43fa815c3a8 (diff)
downloadopenocd+libswd-e8445c9c9f02e82ea417776fa27fbe793ae22f83.tar.gz
openocd+libswd-e8445c9c9f02e82ea417776fa27fbe793ae22f83.tar.bz2
openocd+libswd-e8445c9c9f02e82ea417776fa27fbe793ae22f83.tar.xz
openocd+libswd-e8445c9c9f02e82ea417776fa27fbe793ae22f83.zip
transport selection tweaks
* Bugfix and simplify legacy jtag-only defaulting * Make "dummy" declare its jtag-only nature * likewise update ft2232 * warn if selection is _required_ (multi-transport adapters), fixes the "only ft2232 works" bug for at least dummy, with other drivers going the "legacy" path (submit patches). Signed-off-by: David Brownell <db@helium.(none)>
Diffstat (limited to 'src/jtag/drivers')
-rw-r--r--src/jtag/drivers/dummy.c1
-rw-r--r--src/jtag/drivers/ft2232.c13
2 files changed, 3 insertions, 11 deletions
diff --git a/src/jtag/drivers/dummy.c b/src/jtag/drivers/dummy.c
index 7cb0e33c..8b1e5ecb 100644
--- a/src/jtag/drivers/dummy.c
+++ b/src/jtag/drivers/dummy.c
@@ -166,6 +166,7 @@ struct jtag_interface dummy_interface = {
.supported = DEBUG_CAP_TMS_SEQ,
.commands = dummy_command_handlers,
+ .transports = jtag_only,
.execute_queue = &bitbang_execute_queue,
diff --git a/src/jtag/drivers/ft2232.c b/src/jtag/drivers/ft2232.c
index f06e13b0..bf71fa32 100644
--- a/src/jtag/drivers/ft2232.c
+++ b/src/jtag/drivers/ft2232.c
@@ -168,7 +168,6 @@ struct ft2232_layout {
void (*reset)(int trst, int srst);
void (*blink)(void);
int channel;
- const char **transports;
};
/* init procedures for supported layouts */
@@ -213,11 +212,8 @@ static void signalyzer_h_blink(void);
static void ktlink_blink(void);
/* common transport support options */
-static const char *jtag_only[] = { "jtag", NULL };
-
//static const char *jtag_and_swd[] = { "jtag", "swd", NULL };
-#define jtag_and_swd NULL
static const struct ft2232_layout ft2232_layouts[] =
{
@@ -244,12 +240,10 @@ static const struct ft2232_layout ft2232_layouts[] =
{ .name = "evb_lm3s811",
.init = lm3s811_jtag_init,
.reset = ftx23_reset,
- .transports = jtag_and_swd,
},
{ .name = "luminary_icdi",
.init = icdi_jtag_init,
.reset = ftx23_reset,
- .transports = jtag_and_swd,
},
{ .name = "olimex-jtag",
.init = olimex_jtag_init,
@@ -3206,11 +3200,7 @@ COMMAND_HANDLER(ft2232_handle_layout_command)
for (const struct ft2232_layout *l = ft2232_layouts; l->name; l++) {
if (strcmp(l->name, CMD_ARGV[0]) == 0) {
layout = l;
- /* This may also select the transport
- * if we only support one of them.
- */
- return allow_transports(CMD_CTX,
- l->transports ? : jtag_only);
+ return ERROR_OK;
}
}
@@ -4372,6 +4362,7 @@ struct jtag_interface ft2232_interface = {
.name = "ft2232",
.supported = DEBUG_CAP_TMS_SEQ,
.commands = ft2232_command_handlers,
+ .transports = jtag_only,
.init = ft2232_init,
.quit = ft2232_quit,