diff options
author | zwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-06-09 08:40:46 +0000 |
---|---|---|
committer | zwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-06-09 08:40:46 +0000 |
commit | f9596e96c9835101343603b7ad9c02682b3e7485 (patch) | |
tree | fbdb51ff46d8d9d1647a356ab9d8a1e20d7899f9 /src/jtag/core.c | |
parent | 6dc2c2ce970863a079f101d84a0c47b37b682c76 (diff) |
Move the jtag_error helper routines out of header file:
- Makes jtag_error static, add new get helper function for completeness.
- Improve and add documentation and style for these helpers.
git-svn-id: svn://svn.berlios.de/openocd/trunk@2162 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/jtag/core.c')
-rw-r--r-- | src/jtag/core.c | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/src/jtag/core.c b/src/jtag/core.c index 0a587487..85b2a32e 100644 --- a/src/jtag/core.c +++ b/src/jtag/core.c @@ -46,10 +46,17 @@ static int jtag_flush_queue_count; static void jtag_add_scan_check(void (*jtag_add_scan)(int in_num_fields, const scan_field_t *in_fields, tap_state_t state), int in_num_fields, scan_field_t *in_fields, tap_state_t state); -/* note that this is not marked as static as it must be available from outside core.c for those - that implement the jtag_xxx() minidriver layer -*/ -int jtag_error=ERROR_OK; +/** + * The jtag_error variable is set when an error occurs while executing + * the queue. Application code may set this using jtag_set_error(), + * when an error occurs during processing that should be reported during + * jtag_execute_queue(). + * + * Tts value may be checked with jtag_get_error() and cleared with + * jtag_error_clear(). This value is returned (and cleared) by + * jtag_execute_queue(). + */ +static int jtag_error = ERROR_OK; char* jtag_event_strings[] = { @@ -101,6 +108,24 @@ struct jtag_interface_s *jtag = NULL; jtag_interface_t *jtag_interface = NULL; int jtag_speed = 0; +void jtag_set_error(int error) +{ + if ((error == ERROR_OK) || (jtag_error != ERROR_OK)) + return; + jtag_error = error; +} +int jtag_get_error(void) +{ + return jtag_error; +} +int jtag_error_clear(void) +{ + int temp = jtag_error; + jtag_error = ERROR_OK; + return temp; +} + + jtag_tap_t *jtag_all_taps(void) { return __jtag_all_taps; |