sh: Convert SH-3 to new cacheflush interface.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
@@ -32,7 +32,7 @@
|
|||||||
* SIZE: Size of the region.
|
* SIZE: Size of the region.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void __flush_wback_region(void *start, int size)
|
static void sh3__flush_wback_region(void *start, int size)
|
||||||
{
|
{
|
||||||
unsigned long v, j;
|
unsigned long v, j;
|
||||||
unsigned long begin, end;
|
unsigned long begin, end;
|
||||||
@@ -71,7 +71,7 @@ void __flush_wback_region(void *start, int size)
|
|||||||
* START: Virtual Address (U0, P1, or P3)
|
* START: Virtual Address (U0, P1, or P3)
|
||||||
* SIZE: Size of the region.
|
* SIZE: Size of the region.
|
||||||
*/
|
*/
|
||||||
void __flush_purge_region(void *start, int size)
|
static void sh3__flush_purge_region(void *start, int size)
|
||||||
{
|
{
|
||||||
unsigned long v;
|
unsigned long v;
|
||||||
unsigned long begin, end;
|
unsigned long begin, end;
|
||||||
@@ -90,11 +90,16 @@ void __flush_purge_region(void *start, int size)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
void __init sh3_cache_init(void)
|
||||||
|
{
|
||||||
|
__flush_wback_region = sh3__flush_wback_region;
|
||||||
|
__flush_purge_region = sh3__flush_purge_region;
|
||||||
|
|
||||||
|
/*
|
||||||
* No write back please
|
* No write back please
|
||||||
*
|
*
|
||||||
* Except I don't think there's any way to avoid the writeback. So we
|
* Except I don't think there's any way to avoid the writeback.
|
||||||
* just alias it to __flush_purge_region(). dwmw2.
|
* So we just alias it to sh3__flush_purge_region(). dwmw2.
|
||||||
*/
|
*/
|
||||||
void __flush_invalidate_region(void *start, int size)
|
__flush_invalidate_region = sh3__flush_purge_region;
|
||||||
__attribute__((alias("__flush_purge_region")));
|
}
|
||||||
|
@@ -256,6 +256,12 @@ void __init cpu_cache_init(void)
|
|||||||
sh2a_cache_init();
|
sh2a_cache_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (boot_cpu_data.family == CPU_FAMILY_SH3) {
|
||||||
|
extern void __weak sh3_cache_init(void);
|
||||||
|
|
||||||
|
sh3_cache_init();
|
||||||
|
}
|
||||||
|
|
||||||
if ((boot_cpu_data.family == CPU_FAMILY_SH4) ||
|
if ((boot_cpu_data.family == CPU_FAMILY_SH4) ||
|
||||||
(boot_cpu_data.family == CPU_FAMILY_SH4A) ||
|
(boot_cpu_data.family == CPU_FAMILY_SH4A) ||
|
||||||
(boot_cpu_data.family == CPU_FAMILY_SH4AL_DSP)) {
|
(boot_cpu_data.family == CPU_FAMILY_SH4AL_DSP)) {
|
||||||
|
Reference in New Issue
Block a user