|
From: <zw...@ma...> - 2009-06-08 12:56:12
|
Author: zwelch
Date: 2009-06-08 12:56:07 +0200 (Mon, 08 Jun 2009)
New Revision: 2117
Modified:
trunk/src/jtag/jtag.c
trunk/src/jtag/jtag.h
Log:
Simplify jtag_execute_queue:
- Add static inline jtag_error_clear helper to return and clear jtag_error.
- Use new helper to shrink body of function to two lines.
Modified: trunk/src/jtag/jtag.c
===================================================================
--- trunk/src/jtag/jtag.c 2009-06-08 10:55:54 UTC (rev 2116)
+++ trunk/src/jtag/jtag.c 2009-06-08 10:56:07 UTC (rev 2117)
@@ -914,11 +914,8 @@
int jtag_execute_queue(void)
{
- int retval;
jtag_execute_queue_noclear();
- retval=jtag_error;
- jtag_error=ERROR_OK;
- return retval;
+ return jtag_error_clear();
}
static int jtag_reset_callback(enum jtag_event event, void *priv)
Modified: trunk/src/jtag/jtag.h
===================================================================
--- trunk/src/jtag/jtag.h 2009-06-08 10:55:54 UTC (rev 2116)
+++ trunk/src/jtag/jtag.h 2009-06-08 10:56:07 UTC (rev 2117)
@@ -561,8 +561,17 @@
jtag_error=error;
}
+/**
+ * Resets jtag_error to ERROR_OK, returning its previous value.
+ * @returns The previous value of @c jtag_error.
+ */
+static inline int jtag_error_clear(void)
+{
+ int temp = jtag_error;
+ jtag_error = ERROR_OK;
+ return temp;
+}
-
/* can be implemented by hw+sw */
extern int jtag_power_dropout(int* dropout);
extern int jtag_srst_asserted(int* srst_asserted);
|