summaryrefslogtreecommitdiffstats
path: root/include/asm-arm/cpu-single.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-01-27 01:05:20 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-01-27 01:05:20 +0000
commit546db14ee74118296f425f3b91634fb767d67290 (patch)
tree22b613a3da8d4bf663eec5e155af01b87fdf9094 /include/asm-arm/cpu-single.h
parent1e25e41c4f5474e14452094492dbc169b800e4c8 (diff)
Merge with Linux 2.3.23. The new bootmem stuff has broken various
platforms. At this time I've only verified that IP22 support compiles and IP27 actually works.
Diffstat (limited to 'include/asm-arm/cpu-single.h')
-rw-r--r--include/asm-arm/cpu-single.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/include/asm-arm/cpu-single.h b/include/asm-arm/cpu-single.h
index 009dffb15..fcfaf7745 100644
--- a/include/asm-arm/cpu-single.h
+++ b/include/asm-arm/cpu-single.h
@@ -1,7 +1,11 @@
/*
* Single CPU
*/
+#ifdef __STDC__
#define __cpu_fn(name,x) cpu_##name##x
+#else
+#define __cpu_fn(name,x) cpu_/**/name/**/x
+#endif
#define cpu_fn(name,x) __cpu_fn(name,x)
/*
@@ -14,6 +18,7 @@
#define cpu_check_bugs cpu_fn(CPU_NAME,_check_bugs)
#define cpu_proc_init cpu_fn(CPU_NAME,_proc_init)
#define cpu_proc_fin cpu_fn(CPU_NAME,_proc_fin)
+#define cpu_do_idle cpu_fn(CPU_NAME,_do_idle)
#define cpu_flush_cache_all cpu_fn(CPU_NAME,_flush_cache_all)
#define cpu_flush_cache_area cpu_fn(CPU_NAME,_flush_cache_area)
@@ -22,10 +27,11 @@
#define cpu_flush_ram_page cpu_fn(CPU_NAME,_flush_ram_page)
#define cpu_flush_tlb_all cpu_fn(CPU_NAME,_flush_tlb_all)
#define cpu_flush_tlb_area cpu_fn(CPU_NAME,_flush_tlb_area)
-#define cpu_switch_mm cpu_fn(CPU_NAME,_set_pgd)
+#define cpu_flush_tlb_page cpu_fn(CPU_NAME,_flush_tlb_page)
+#define cpu_set_pgd cpu_fn(CPU_NAME,_set_pgd)
#define cpu_set_pmd cpu_fn(CPU_NAME,_set_pmd)
#define cpu_set_pte cpu_fn(CPU_NAME,_set_pte)
-#define cpu_reset cpu_fn(CPU_NAME,reset)
+#define cpu_reset cpu_fn(CPU_NAME,_reset)
#define cpu_flush_icache_area cpu_fn(CPU_NAME,_flush_icache_area)
#define cpu_cache_wback_area cpu_fn(CPU_NAME,_cache_wback_area)
#define cpu_cache_purge_area cpu_fn(CPU_NAME,_cache_purge_area)
@@ -42,6 +48,7 @@ extern void cpu_data_abort(unsigned long pc);
extern void cpu_check_bugs(void);
extern void cpu_proc_init(void);
extern void cpu_proc_fin(void);
+extern int cpu_do_idle(void);
extern void cpu_flush_cache_all(void);
extern void cpu_flush_cache_area(unsigned long address, unsigned long end, int flags);
@@ -50,7 +57,8 @@ extern void cpu_clean_cache_area(unsigned long start, unsigned long size);
extern void cpu_flush_ram_page(unsigned long page);
extern void cpu_flush_tlb_all(void);
extern void cpu_flush_tlb_area(unsigned long address, unsigned long end, int flags);
-extern void cpu_switch_mm(unsigned long pgd_phys, struct task_struct *tsk);
+extern void cpu_flush_tlb_page(unsigned long address, int flags);
+extern void cpu_set_pgd(unsigned long pgd_phys);
extern void cpu_set_pmd(pmd_t *pmdp, pmd_t pmd);
extern void cpu_set_pte(pte_t *ptep, pte_t pte);
extern unsigned long cpu_reset(void);
@@ -58,4 +66,6 @@ extern void cpu_flush_icache_area(unsigned long start, unsigned long size);
extern void cpu_cache_wback_area(unsigned long start, unsigned long end);
extern void cpu_cache_purge_area(unsigned long start, unsigned long end);
+#define cpu_switch_mm(pgd,tsk) cpu_set_pgd(__virt_to_phys((unsigned long)(pgd)))
+
#endif