Import 2.3.8pre3
[davej-history.git] / arch / alpha / kernel / proto.h
blob8fa1fd7ea7666910eccdf6b6472f89278c2d5926
1 /* Prototypes of functions used across modules here in this directory. */
3 #define vucp volatile unsigned char *
4 #define vusp volatile unsigned short *
5 #define vip volatile int *
6 #define vuip volatile unsigned int *
7 #define vulp volatile unsigned long *
9 struct linux_hose_info;
11 /* core_apecs.c */
12 extern int apecs_hose_read_config_byte (u8, u8, u8, u8 *value,
13 struct linux_hose_info *hose);
14 extern int apecs_hose_read_config_word (u8, u8, u8, u16 *value,
15 struct linux_hose_info *hose);
16 extern int apecs_hose_read_config_dword (u8, u8, u8, u32 *value,
17 struct linux_hose_info *hose);
18 extern int apecs_hose_write_config_byte (u8, u8, u8, u8 value,
19 struct linux_hose_info *hose);
20 extern int apecs_hose_write_config_word (u8, u8, u8, u16 value,
21 struct linux_hose_info *hose);
22 extern int apecs_hose_write_config_dword (u8, u8, u8, u32 value,
23 struct linux_hose_info *hose);
24 extern void apecs_init_arch(unsigned long *, unsigned long *);
26 extern volatile unsigned int apecs_mcheck_expected;
27 extern volatile unsigned int apecs_mcheck_taken;
28 extern int apecs_pci_clr_err(void);
29 extern void apecs_machine_check(u64, u64, struct pt_regs *);
31 /* core_cia.c */
32 extern int cia_hose_read_config_byte (u8, u8, u8, u8 *value,
33 struct linux_hose_info *hose);
34 extern int cia_hose_read_config_word (u8, u8, u8, u16 *value,
35 struct linux_hose_info *hose);
36 extern int cia_hose_read_config_dword (u8, u8, u8, u32 *value,
37 struct linux_hose_info *hose);
38 extern int cia_hose_write_config_byte (u8, u8, u8, u8 value,
39 struct linux_hose_info *hose);
40 extern int cia_hose_write_config_word (u8, u8, u8, u16 value,
41 struct linux_hose_info *hose);
42 extern int cia_hose_write_config_dword (u8, u8, u8, u32 value,
43 struct linux_hose_info *hose);
44 extern void cia_init_arch(unsigned long *, unsigned long *);
45 extern void cia_machine_check(u64, u64, struct pt_regs *);
47 /* core_lca.c */
48 extern int lca_hose_read_config_byte (u8, u8, u8, u8 *value,
49 struct linux_hose_info *hose);
50 extern int lca_hose_read_config_word (u8, u8, u8, u16 *value,
51 struct linux_hose_info *hose);
52 extern int lca_hose_read_config_dword (u8, u8, u8, u32 *value,
53 struct linux_hose_info *hose);
54 extern int lca_hose_write_config_byte (u8, u8, u8, u8 value,
55 struct linux_hose_info *hose);
56 extern int lca_hose_write_config_word (u8, u8, u8, u16 value,
57 struct linux_hose_info *hose);
58 extern int lca_hose_write_config_dword (u8, u8, u8, u32 value,
59 struct linux_hose_info *hose);
60 extern void lca_init_arch(unsigned long *, unsigned long *);
61 extern void lca_machine_check(u64, u64, struct pt_regs *);
63 /* core_mcpcia.c */
64 extern int mcpcia_hose_read_config_byte (u8, u8, u8, u8 *value,
65 struct linux_hose_info *hose);
66 extern int mcpcia_hose_read_config_word (u8, u8, u8, u16 *value,
67 struct linux_hose_info *hose);
68 extern int mcpcia_hose_read_config_dword (u8, u8, u8, u32 *value,
69 struct linux_hose_info *hose);
70 extern int mcpcia_hose_write_config_byte (u8, u8, u8, u8 value,
71 struct linux_hose_info *hose);
72 extern int mcpcia_hose_write_config_word (u8, u8, u8, u16 value,
73 struct linux_hose_info *hose);
74 extern int mcpcia_hose_write_config_dword (u8, u8, u8, u32 value,
75 struct linux_hose_info *hose);
76 extern void mcpcia_init_arch(unsigned long *, unsigned long *);
77 extern void mcpcia_machine_check(u64, u64, struct pt_regs *);
79 /* core_polaris.c */
80 extern int polaris_hose_read_config_byte (u8, u8, u8, u8 *value,
81 struct linux_hose_info *hose);
82 extern int polaris_hose_read_config_word (u8, u8, u8, u16 *value,
83 struct linux_hose_info *hose);
84 extern int polaris_hose_read_config_dword (u8, u8, u8, u32 *value,
85 struct linux_hose_info *hose);
86 extern int polaris_hose_write_config_byte (u8, u8, u8, u8 value,
87 struct linux_hose_info *hose);
88 extern int polaris_hose_write_config_word (u8, u8, u8, u16 value,
89 struct linux_hose_info *hose);
90 extern int polaris_hose_write_config_dword (u8, u8, u8, u32 value,
91 struct linux_hose_info *hose);
92 extern void polaris_init_arch(unsigned long *, unsigned long *);
93 extern void polaris_machine_check(u64, u64, struct pt_regs *);
95 /* core_pyxis.c */
96 extern int pyxis_hose_read_config_byte (u8, u8, u8, u8 *value,
97 struct linux_hose_info *hose);
98 extern int pyxis_hose_read_config_word (u8, u8, u8, u16 *value,
99 struct linux_hose_info *hose);
100 extern int pyxis_hose_read_config_dword (u8, u8, u8, u32 *value,
101 struct linux_hose_info *hose);
102 extern int pyxis_hose_write_config_byte (u8, u8, u8, u8 value,
103 struct linux_hose_info *hose);
104 extern int pyxis_hose_write_config_word (u8, u8, u8, u16 value,
105 struct linux_hose_info *hose);
106 extern int pyxis_hose_write_config_dword (u8, u8, u8, u32 value,
107 struct linux_hose_info *hose);
108 extern void pyxis_enable_errors (void);
109 extern int pyxis_srm_window_setup (void);
110 extern void pyxis_native_window_setup(void);
111 extern void pyxis_finish_init_arch(void);
112 extern void pyxis_init_arch(unsigned long *, unsigned long *);
113 extern void pyxis_machine_check(u64, u64, struct pt_regs *);
115 /* core_t2.c */
116 extern int t2_hose_read_config_byte (u8, u8, u8, u8 *value,
117 struct linux_hose_info *hose);
118 extern int t2_hose_read_config_word (u8, u8, u8, u16 *value,
119 struct linux_hose_info *hose);
120 extern int t2_hose_read_config_dword (u8, u8, u8, u32 *value,
121 struct linux_hose_info *hose);
122 extern int t2_hose_write_config_byte (u8, u8, u8, u8 value,
123 struct linux_hose_info *hose);
124 extern int t2_hose_write_config_word (u8, u8, u8, u16 value,
125 struct linux_hose_info *hose);
126 extern int t2_hose_write_config_dword (u8, u8, u8, u32 value,
127 struct linux_hose_info *hose);
128 extern void t2_init_arch(unsigned long *, unsigned long *);
129 extern void t2_machine_check(u64, u64, struct pt_regs *);
131 /* core_tsunami.c */
132 extern int tsunami_hose_read_config_byte (u8, u8, u8, u8 *value,
133 struct linux_hose_info *hose);
134 extern int tsunami_hose_read_config_word (u8, u8, u8, u16 *value,
135 struct linux_hose_info *hose);
136 extern int tsunami_hose_read_config_dword (u8, u8, u8, u32 *value,
137 struct linux_hose_info *hose);
138 extern int tsunami_hose_write_config_byte (u8, u8, u8, u8 value,
139 struct linux_hose_info *hose);
140 extern int tsunami_hose_write_config_word (u8, u8, u8, u16 value,
141 struct linux_hose_info *hose);
142 extern int tsunami_hose_write_config_dword (u8, u8, u8, u32 value,
143 struct linux_hose_info *hose);
144 extern void tsunami_init_arch(unsigned long *, unsigned long *);
145 extern void tsunami_machine_check(u64, u64, struct pt_regs *);
147 /* setup.c */
148 extern unsigned long srm_hae;
150 /* smp.c */
151 extern void setup_smp(void);
152 extern int smp_info(char *buffer);
153 extern void handle_ipi(struct pt_regs *);
154 extern void smp_percpu_timer_interrupt(struct pt_regs *);
155 extern int smp_boot_cpuid;
157 /* bios32.c */
158 extern void reset_for_srm(void);
160 /* time.c */
161 extern void timer_interrupt(int irq, void *dev, struct pt_regs * regs);
162 extern void rtc_init_pit(void);
163 extern void generic_init_pit(void);
164 extern unsigned long est_cycle_freq;
166 /* smc37c93x.c */
167 extern void SMC93x_Init(void);
169 /* smc37c669.c */
170 extern void SMC669_Init(int);
172 /* es1888.c */
173 extern void es1888_init(void);
175 /* fpregs.c */
176 extern void alpha_write_fp_reg (unsigned long reg, unsigned long val);
177 extern unsigned long alpha_read_fp_reg (unsigned long reg);
179 /* head.S */
180 extern void wrmces(unsigned long mces);
181 extern void cserve_ena(unsigned long);
182 extern void cserve_dis(unsigned long);
183 extern void __smp_callin(unsigned long);
185 /* entry.S */
186 extern void entArith(void);
187 extern void entIF(void);
188 extern void entInt(void);
189 extern void entMM(void);
190 extern void entSys(void);
191 extern void entUna(void);
192 extern void entDbg(void);
194 /* process.c */
195 extern void generic_kill_arch (int mode, char *reboot_cmd);
196 extern void cpu_idle(void *) __attribute__((noreturn));
198 /* ptrace.c */
199 extern int ptrace_set_bpt (struct task_struct *child);
200 extern int ptrace_cancel_bpt (struct task_struct *child);
202 /* ../mm/init.c */
203 void srm_paging_stop(void);