]> git.sur5r.net Git - openocd/commitdiff
- fixes issue with reset and arm926ejs core. Thanks Øyvind Harboe
authorntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Mon, 4 Feb 2008 20:12:46 +0000 (20:12 +0000)
committerntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Mon, 4 Feb 2008 20:12:46 +0000 (20:12 +0000)
git-svn-id: svn://svn.berlios.de/openocd/trunk@281 b42882b7-edfa-0310-969c-e2dbd0fdcd60

src/target/arm926ejs.c

index efead81b8329b38aa6f6f046fc84fe72b27c7539..8a609b0762504e4711fa190d95a186b966ac25ed 100644 (file)
@@ -97,19 +97,19 @@ target_type_t arm926ejs_target =
 
 int arm926ejs_catch_broken_irscan(u8 *captured, void *priv, scan_field_t *field)
 {
-       u8 *in_value=field->in_check_value;
-       
        /* The ARM926EJ-S' instruction register is 4 bits wide */
-       u8 t=*in_value & 0xf;
-       if ((t == 0x0f) || (t == 0x00))
+       u8 t = *captured & 0xf;
+       u8 t2 = *field->in_check_value & 0xf;
+       if (t == t2)
        {
-               DEBUG("caught ARM926EJ-S invalid Capture-IR result after CP15 access");
                return ERROR_OK;
        }
-       else
+       else if ((t == 0x0f) || (t == 0x00))
        {
-               return ERROR_JTAG_QUEUE_FAILED;
+               DEBUG("caught ARM926EJ-S invalid Capture-IR result after CP15 access");
+               return ERROR_OK;
        }
+       return ERROR_JTAG_QUEUE_FAILED;;
 }
 
 int arm926ejs_read_cp15(target_t *target, u32 address, u32 *value)