jtag API error handling refactoring.
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Thu, 7 May 2009 13:04:13 +0000 (13:04 +0000)
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Thu, 7 May 2009 13:04:13 +0000 (13:04 +0000)
git-svn-id: svn://svn.berlios.de/openocd/trunk@1638 b42882b7-edfa-0310-969c-e2dbd0fdcd60

src/jtag/jtag.c
src/jtag/jtag.h

index 242eb56bf6b3fd0d6a12ab78eef3688b0253c406..981f47e128bb794c365172df3f82587ee74d145c 100644 (file)
@@ -42,7 +42,7 @@
 #include <strings.h>
 #endif
 
-static void jtag_execute_queue_noclear(void);
+
 
 /* note that this is not marked as static as it must be available from outside jtag.c for those
    that implement the jtag_xxx() minidriver layer
@@ -1446,7 +1446,7 @@ int MINIDRIVER(interface_jtag_execute_queue)(void)
        return retval;
 }
 
-static void jtag_execute_queue_noclear(void)
+void jtag_execute_queue_noclear(void)
 {
        int retval=interface_jtag_execute_queue();
        /* we keep the first error */
index c0f94856b8ced9f49ad44aff771d23afddf84cff..ce11d592df1df87f3b665a38265808b3ae38b3fb 100644 (file)
@@ -700,6 +700,9 @@ int  interface_jtag_add_clocks(int num_cycles);
  */
 extern int            jtag_execute_queue(void);
 
+/* same as jtag_execute_queue() but does not clear the error flag */
+extern void jtag_execute_queue_noclear(void);
+
 /* this flag is set when an error occurs while executing the queue. cleared
  * by jtag_execute_queue()
  *
@@ -708,6 +711,16 @@ extern int            jtag_execute_queue(void);
  */
 extern int jtag_error;
 
+static __inline__ void jtag_set_error(int error)
+{
+       if ((error==ERROR_OK)||(jtag_error!=ERROR_OK))
+       {
+               /* keep first error */
+               return;
+       }
+       jtag_error=error;
+}
+
 
 
 /* can be implemented by hw+sw */

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)