MN10300: The SMP_ICACHE_INV_FLUSH_RANGE IPI command does not exist
The invalidate-only versions of flush_icache_*range() are trying sending the SMP_ICACHE_INV_FLUSH_RANGE IPI command in SMP kernels when they should be sending SMP_ICACHE_INV_RANGE as the former does not exist. Signed-off-by: David Howells <dhowells@redhat.com>
This commit is contained in:
parent
6fc34436be
commit
dcca52c21e
|
@ -69,7 +69,7 @@ static void flush_icache_page_range(unsigned long start, unsigned long end)
|
||||||
|
|
||||||
/* invalidate the icache coverage on that region */
|
/* invalidate the icache coverage on that region */
|
||||||
mn10300_local_icache_inv_range2(addr + off, size);
|
mn10300_local_icache_inv_range2(addr + off, size);
|
||||||
smp_cache_call(SMP_ICACHE_INV_FLUSH_RANGE, start, end);
|
smp_cache_call(SMP_ICACHE_INV_RANGE, start, end);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -101,7 +101,7 @@ void flush_icache_range(unsigned long start, unsigned long end)
|
||||||
* directly */
|
* directly */
|
||||||
start_page = (start >= 0x80000000UL) ? start : 0x80000000UL;
|
start_page = (start >= 0x80000000UL) ? start : 0x80000000UL;
|
||||||
mn10300_icache_inv_range(start_page, end);
|
mn10300_icache_inv_range(start_page, end);
|
||||||
smp_cache_call(SMP_ICACHE_INV_FLUSH_RANGE, start, end);
|
smp_cache_call(SMP_ICACHE_INV_RANGE, start, end);
|
||||||
if (start_page == start)
|
if (start_page == start)
|
||||||
goto done;
|
goto done;
|
||||||
end = start_page;
|
end = start_page;
|
||||||
|
|
Loading…
Reference in a new issue