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
;
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
*);
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
*);
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
*);
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
*);
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
*);
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
*);
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
*);
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
*);
148 extern unsigned long srm_hae
;
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
;
158 extern void reset_for_srm(void);
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
;
167 extern void SMC93x_Init(void);
170 extern void SMC669_Init(int);
173 extern void es1888_init(void);
176 extern void alpha_write_fp_reg (unsigned long reg
, unsigned long val
);
177 extern unsigned long alpha_read_fp_reg (unsigned long reg
);
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);
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);
195 extern void generic_kill_arch (int mode
, char *reboot_cmd
);
196 extern void cpu_idle(void *) __attribute__((noreturn
));
199 extern int ptrace_set_bpt (struct task_struct
*child
);
200 extern int ptrace_cancel_bpt (struct task_struct
*child
);
203 void srm_paging_stop(void);