From 8b3bfcfc5be85b7004b1d2453cb42a518c24e605 Mon Sep 17 00:00:00 2001 From: David Brownell Date: Sun, 11 Oct 2009 10:06:08 -0700 Subject: xscale bugfix to handler loading 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 --- src/target/xscale.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/target') diff --git a/src/target/xscale.c b/src/target/xscale.c index b46b621e..38ed1678 100644 --- a/src/target/xscale.c +++ b/src/target/xscale.c @@ -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 */ -- cgit v1.2.3