summaryrefslogtreecommitdiff
path: root/src/jtag/minidriver
diff options
context:
space:
mode:
authorØyvind Harboe <oyvind.harboe@zylin.com>2009-12-04 16:00:43 +0100
committerØyvind Harboe <oyvind.harboe@zylin.com>2009-12-08 10:29:58 +0100
commit97de520bc02f96f31063175fbc9cad034e84055d (patch)
treeaf141babaa1d5e09f15e53cc5806b98ecbf7b217 /src/jtag/minidriver
parent304af6e7d87af60a4c807b940ff6102243d465a4 (diff)
downloadopenocd_libswd-97de520bc02f96f31063175fbc9cad034e84055d.tar.gz
openocd_libswd-97de520bc02f96f31063175fbc9cad034e84055d.tar.bz2
openocd_libswd-97de520bc02f96f31063175fbc9cad034e84055d.tar.xz
openocd_libswd-97de520bc02f96f31063175fbc9cad034e84055d.zip
minidriver: fix inline capability of minidriver
Low latency low CPU processing power systems(embedded) will benefit greatly from being able to inline certain jtag_add_xxx() fn's. The trick is that this has to be done in such a way as to allow implementing an OpenOCD API with a shared library(eventually) on a PC hosted OpenOCD. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Diffstat (limited to 'src/jtag/minidriver')
-rw-r--r--src/jtag/minidriver/minidriver_imp.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/jtag/minidriver/minidriver_imp.h b/src/jtag/minidriver/minidriver_imp.h
index e3715140..b6cdbead 100644
--- a/src/jtag/minidriver/minidriver_imp.h
+++ b/src/jtag/minidriver/minidriver_imp.h
@@ -21,7 +21,7 @@
#ifndef MINIDRIVER_IMP_H
#define MINIDRIVER_IMP_H
-#include "jtag_minidriver.h"
+#include <jtag/jtag_minidriver.h>
static inline void interface_jtag_alloc_in_value32(struct scan_field *field)
{
@@ -41,4 +41,21 @@ static inline void interface_jtag_add_scan_check_alloc(struct scan_field *field)
field->in_value = field->intmp;
}
+static inline void jtag_add_dr_out(struct jtag_tap* tap,
+ int num_fields, const int* num_bits, const uint32_t* value,
+ tap_state_t end_state)
+{
+ cmd_queue_cur_state = end_state;
+
+ interface_jtag_add_dr_out(tap,
+ num_fields, num_bits, value,
+ end_state);
+}
+
+#define jtag_add_callback(callback, in) interface_jtag_add_callback(callback, in)
+
+#define jtag_add_callback4(callback, in, data1, data2, data3) interface_jtag_add_callback4(callback, in, data1, data2, data3)
+
+
+
#endif // MINIDRIVER_IMP_H