armv7: fixes for dcache_op_by_mva()
This fixes a couple issues with dcache_op_by_mva(): - Add missing data and instruction sync barriers. - Removes unneded -1 from loop terminating condition. Change-Id: I098388614397c1e53079c017d56b1cf3ef273676 Signed-off-by: David Hendricks <dhendrix@chromium.org> Reviewed-on: http://review.coreboot.org/2913 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
parent
49675b950f
commit
42f5513d3d
|
@ -183,7 +183,9 @@ static void dcache_op_mva(unsigned long addr,
|
|||
unsigned long line, i;
|
||||
|
||||
line = line_bytes();
|
||||
for (i = addr & ~(line - 1); i < addr + len - 1; i += line) {
|
||||
|
||||
dsb();
|
||||
for (i = addr & ~(line - 1); i < addr + len; i += line) {
|
||||
switch(op) {
|
||||
case OP_DCCIMVAC:
|
||||
dccimvac(addr);
|
||||
|
@ -192,6 +194,7 @@ static void dcache_op_mva(unsigned long addr,
|
|||
break;
|
||||
}
|
||||
}
|
||||
isb();
|
||||
}
|
||||
|
||||
void dcache_clean_by_mva(unsigned long addr, unsigned long len)
|
||||
|
|
Loading…
Reference in New Issue