transport: add transport_is_hla() 69/4469/9
authorTomas Vanek <vanekt@fbl.cz>
Thu, 15 Mar 2018 19:02:10 +0000 (20:02 +0100)
committerMatthias Welwarsky <matthias@welwarsky.de>
Tue, 20 Mar 2018 11:48:44 +0000 (11:48 +0000)
and move declaration of all transport_is_xxx() functions to transport.h

Change-Id: Ib229115b5017507b49655bc43b517ab6fb32f7a6
Signed-off-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-on: http://openocd.zylin.com/4469
Tested-by: jenkins
Reviewed-by: Matthias Welwarsky <matthias@welwarsky.de>
src/jtag/hla/hla_transport.c
src/jtag/jtag.h
src/jtag/swd.h
src/jtag/tcl.c
src/target/cortex_a.c
src/transport/transport.h

index 5a5671d..ddacea3 100644 (file)
@@ -233,3 +233,11 @@ static void hl_constructor(void)
        transport_register(&hl_jtag_transport);
        transport_register(&stlink_swim_transport);
 }
+
+bool transport_is_hla(void)
+{
+       struct transport *t;
+       t = get_current_transport();
+       return t == &hl_swd_transport || t == &hl_jtag_transport
+                  || t == &stlink_swim_transport;
+}
index 7702d6c..751facb 100644 (file)
@@ -642,8 +642,6 @@ void jtag_poll_set_enabled(bool value);
  * level APIs that are used in inner loops. */
 #include <jtag/minidriver.h>
 
-bool transport_is_jtag(void);
-
 int jim_jtag_newtap(Jim_Interp *interp, int argc, Jim_Obj *const *argv);
 
 #endif /* OPENOCD_JTAG_JTAG_H */
index c888cc0..52f41d5 100644 (file)
@@ -211,6 +211,4 @@ struct swd_driver {
 int swd_init_reset(struct command_context *cmd_ctx);
 void swd_add_reset(int req_srst);
 
-bool transport_is_swd(void);
-
 #endif /* OPENOCD_JTAG_SWD_H */
index bc6bbf2..e32f0ca 100644 (file)
@@ -42,6 +42,7 @@
 #endif
 
 #include <helper/time_support.h>
+#include "transport/transport.h"
 
 /**
  * @file
index 37098af..74f30cb 100644 (file)
@@ -54,7 +54,7 @@
 #include "target_type.h"
 #include "arm_opcodes.h"
 #include "arm_semihosting.h"
-#include "jtag/swd.h"
+#include "transport/transport.h"
 #include <helper/time_support.h>
 
 static int cortex_a_poll(struct target *target);
index 6c57067..d0a77dd 100644 (file)
 #ifndef OPENOCD_TRANSPORT_TRANSPORT_H
 #define OPENOCD_TRANSPORT_TRANSPORT_H
 
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
 #include "helper/command.h"
 
 /**
@@ -90,4 +94,19 @@ int allow_transports(struct command_context *ctx, const char * const *vector);
 
 bool transports_are_declared(void);
 
+bool transport_is_jtag(void);
+bool transport_is_swd(void);
+
+/* FIXME: ZY1000 test build on jenkins is configured with enabled hla adapters
+ * but jtag/hla/hla_*.c files are not compiled. To workaround the problem we assume hla
+ * is broken if BUILD_ZY1000 is set */
+#if BUILD_HLADAPTER && !BUILD_ZY1000
+bool transport_is_hla(void);
+#else
+static inline bool transport_is_hla(void)
+{
+       return false;
+}
+#endif
+
 #endif /* OPENOCD_TRANSPORT_TRANSPORT_H */