Commit | Line | Data |
---|---|---|
7105de84 SR |
1 | #ifndef __SPARC_KERNEL_H |
2 | #define __SPARC_KERNEL_H | |
81265fd9 SR |
3 | |
4 | #include <linux/interrupt.h> | |
5 | ||
a2a211cb SR |
6 | #include <asm/traps.h> |
7 | ||
53ae3419 | 8 | /* cpu.c */ |
c3cf5e8c | 9 | extern const char *sparc_pmu_type; |
53ae3419 | 10 | extern unsigned int fsr_storage; |
cb1b8209 | 11 | extern int ncpus_probed; |
53ae3419 | 12 | |
8d74e32a SR |
13 | #ifdef CONFIG_SPARC32 |
14 | /* cpu.c */ | |
53ae3419 SR |
15 | extern void cpu_probe(void); |
16 | ||
8d74e32a SR |
17 | /* traps_32.c */ |
18 | extern void handle_hw_divzero(struct pt_regs *regs, unsigned long pc, | |
19 | unsigned long npc, unsigned long psr); | |
20 | /* muldiv.c */ | |
21 | extern int do_user_muldiv (struct pt_regs *, unsigned long); | |
81265fd9 SR |
22 | |
23 | /* irq_32.c */ | |
24 | extern struct irqaction static_irqaction[]; | |
25 | extern int static_irq_count; | |
26 | extern spinlock_t irq_action_lock; | |
27 | ||
28 | extern void unexpected_irq(int irq, void *dev_id, struct pt_regs * regs); | |
b7afdb7e SR |
29 | extern void init_IRQ(void); |
30 | ||
31 | /* sun4c_irq.c */ | |
32 | extern void sun4c_init_IRQ(void); | |
33 | ||
34 | /* sun4m_irq.c */ | |
35 | extern unsigned int lvl14_resolution; | |
36 | ||
37 | extern void sun4m_init_IRQ(void); | |
6baa9b20 | 38 | extern void sun4m_unmask_profile_irq(void); |
b7afdb7e SR |
39 | extern void sun4m_clear_profile_irq(int cpu); |
40 | ||
41 | /* sun4d_irq.c */ | |
42 | extern spinlock_t sun4d_imsk_lock; | |
43 | ||
44 | extern void sun4d_init_IRQ(void); | |
45 | extern int sun4d_request_irq(unsigned int irq, | |
46 | irq_handler_t handler, | |
47 | unsigned long irqflags, | |
48 | const char *devname, void *dev_id); | |
49 | extern int show_sun4d_interrupts(struct seq_file *, void *); | |
50 | extern void sun4d_distribute_irqs(void); | |
51 | extern void sun4d_free_irq(unsigned int irq, void *dev_id); | |
52 | ||
53 | /* head_32.S */ | |
54 | extern unsigned int t_nmi[]; | |
55 | extern unsigned int linux_trap_ipi15_sun4d[]; | |
56 | extern unsigned int linux_trap_ipi15_sun4m[]; | |
57 | ||
a2a211cb SR |
58 | extern struct tt_entry trapbase_cpu1; |
59 | extern struct tt_entry trapbase_cpu2; | |
60 | extern struct tt_entry trapbase_cpu3; | |
b7afdb7e SR |
61 | |
62 | extern char cputypval[]; | |
63 | ||
64 | /* entry.S */ | |
65 | extern unsigned long lvl14_save[4]; | |
66 | extern unsigned int real_irq_entry[]; | |
67 | extern unsigned int smp4d_ticker[]; | |
68 | extern unsigned int patchme_maybe_smp_msg[]; | |
69 | ||
70 | extern void floppy_hardint(void); | |
71 | ||
72 | /* trampoline_32.S */ | |
73 | extern int __smp4m_processor_id(void); | |
74 | extern int __smp4d_processor_id(void); | |
75 | extern unsigned long sun4m_cpu_startup; | |
76 | extern unsigned long sun4d_cpu_startup; | |
81265fd9 | 77 | |
8d74e32a | 78 | #else /* CONFIG_SPARC32 */ |
7105de84 SR |
79 | #endif /* CONFIG_SPARC32 */ |
80 | #endif /* !(__SPARC_KERNEL_H) */ |