* added 0.99 linux version
[mascara-docs.git] / i386 / linux / linux-2.3.21 / include / asm-arm / cpu-single.h
blob009dffb1560360cb9af164b9ec46cd8dd8de6c8f
1 /*
2 * Single CPU
3 */
4 #define __cpu_fn(name,x) cpu_##name##x
5 #define cpu_fn(name,x) __cpu_fn(name,x)
7 /*
8 * If we are supporting multiple CPUs, then
9 * we must use a table of function pointers
10 * for this lot. Otherwise, we can optimise
11 * the table away.
13 #define cpu_data_abort cpu_fn(CPU_NAME,_data_abort)
14 #define cpu_check_bugs cpu_fn(CPU_NAME,_check_bugs)
15 #define cpu_proc_init cpu_fn(CPU_NAME,_proc_init)
16 #define cpu_proc_fin cpu_fn(CPU_NAME,_proc_fin)
18 #define cpu_flush_cache_all cpu_fn(CPU_NAME,_flush_cache_all)
19 #define cpu_flush_cache_area cpu_fn(CPU_NAME,_flush_cache_area)
20 #define cpu_flush_cache_entry cpu_fn(CPU_NAME,_flush_cache_entry)
21 #define cpu_clean_cache_area cpu_fn(CPU_NAME,_clean_cache_area)
22 #define cpu_flush_ram_page cpu_fn(CPU_NAME,_flush_ram_page)
23 #define cpu_flush_tlb_all cpu_fn(CPU_NAME,_flush_tlb_all)
24 #define cpu_flush_tlb_area cpu_fn(CPU_NAME,_flush_tlb_area)
25 #define cpu_switch_mm cpu_fn(CPU_NAME,_set_pgd)
26 #define cpu_set_pmd cpu_fn(CPU_NAME,_set_pmd)
27 #define cpu_set_pte cpu_fn(CPU_NAME,_set_pte)
28 #define cpu_reset cpu_fn(CPU_NAME,reset)
29 #define cpu_flush_icache_area cpu_fn(CPU_NAME,_flush_icache_area)
30 #define cpu_cache_wback_area cpu_fn(CPU_NAME,_cache_wback_area)
31 #define cpu_cache_purge_area cpu_fn(CPU_NAME,_cache_purge_area)
33 #ifndef __ASSEMBLY__
35 #include <asm/page.h>
37 /* forward declare task_struct */
38 struct task_struct;
40 /* declare all the functions as extern */
41 extern void cpu_data_abort(unsigned long pc);
42 extern void cpu_check_bugs(void);
43 extern void cpu_proc_init(void);
44 extern void cpu_proc_fin(void);
46 extern void cpu_flush_cache_all(void);
47 extern void cpu_flush_cache_area(unsigned long address, unsigned long end, int flags);
48 extern void cpu_flush_cache_entry(unsigned long address);
49 extern void cpu_clean_cache_area(unsigned long start, unsigned long size);
50 extern void cpu_flush_ram_page(unsigned long page);
51 extern void cpu_flush_tlb_all(void);
52 extern void cpu_flush_tlb_area(unsigned long address, unsigned long end, int flags);
53 extern void cpu_switch_mm(unsigned long pgd_phys, struct task_struct *tsk);
54 extern void cpu_set_pmd(pmd_t *pmdp, pmd_t pmd);
55 extern void cpu_set_pte(pte_t *ptep, pte_t pte);
56 extern unsigned long cpu_reset(void);
57 extern void cpu_flush_icache_area(unsigned long start, unsigned long size);
58 extern void cpu_cache_wback_area(unsigned long start, unsigned long end);
59 extern void cpu_cache_purge_area(unsigned long start, unsigned long end);
61 #endif