]> git.sur5r.net Git - openocd/commitdiff
xscale bugfix to handler loading
authorDavid Brownell <dbrownell@users.sourceforge.net>
Sun, 11 Oct 2009 17:06:08 +0000 (10:06 -0700)
committerDavid Brownell <dbrownell@users.sourceforge.net>
Sun, 11 Oct 2009 17:06:08 +0000 (10:06 -0700)
Just fill out the rest of the cache line with NOPs; don't change
the record of how much data we consumed.  Otherwise the count of
how much data is left can roll over from positive to negative
("VERY positive") and skip the loop termination of zero.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
src/target/xscale.c

index b46b621e4ef4b363ba0a60fd2232feef7103a97c..38ed16784e7ad9ad1e6a18c9acc40a7e77754a18 100644 (file)
@@ -1688,9 +1688,9 @@ int xscale_deassert_reset(target_t *target)
                                cache_line[i / 4] = le_to_h_u32(&buffer[i]);
                        }
 
-                       for (; buf_cnt < 32; buf_cnt += 4)
+                       for (; i < 32; i += 4)
                        {
-                               cache_line[buf_cnt / 4] = 0xe1a08008;
+                               cache_line[i / 4] = 0xe1a08008;
                        }
 
                        /* only load addresses other than the reset vectors */