Merge branch 'master'
[linux-2.6] / include / asm-m68k / machdep.h
1 #ifndef _M68K_MACHDEP_H
2 #define _M68K_MACHDEP_H
3
4 #include <linux/seq_file.h>
5 #include <linux/interrupt.h>
6
7 struct pt_regs;
8 struct mktime;
9 struct rtc_time;
10 struct rtc_pll_info;
11 struct buffer_head;
12
13 extern void (*mach_sched_init) (irqreturn_t (*handler)(int, void *, struct pt_regs *));
14 /* machine dependent irq functions */
15 extern void (*mach_init_IRQ) (void);
16 extern irqreturn_t (*(*mach_default_handler)[]) (int, void *, struct pt_regs *);
17 extern int (*mach_request_irq) (unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_regs *),
18                                 unsigned long flags, const char *devname, void *dev_id);
19 extern void (*mach_free_irq) (unsigned int irq, void *dev_id);
20 extern void (*mach_get_model) (char *model);
21 extern int (*mach_get_hardware_list) (char *buffer);
22 extern int (*mach_get_irq_list) (struct seq_file *p, void *v);
23 extern irqreturn_t (*mach_process_int) (int irq, struct pt_regs *fp);
24 /* machine dependent timer functions */
25 extern unsigned long (*mach_gettimeoffset)(void);
26 extern int (*mach_hwclk)(int, struct rtc_time*);
27 extern unsigned int (*mach_get_ss)(void);
28 extern int (*mach_get_rtc_pll)(struct rtc_pll_info *);
29 extern int (*mach_set_rtc_pll)(struct rtc_pll_info *);
30 extern int (*mach_set_clock_mmss)(unsigned long);
31 extern void (*mach_reset)( void );
32 extern void (*mach_halt)( void );
33 extern void (*mach_power_off)( void );
34 extern unsigned long (*mach_hd_init) (unsigned long, unsigned long);
35 extern void (*mach_hd_setup)(char *, int *);
36 extern long mach_max_dma_address;
37 extern void (*mach_floppy_setup)(char *, int *);
38 extern void (*mach_heartbeat) (int);
39 extern void (*mach_l2_flush) (int);
40 extern void (*mach_beep) (unsigned int, unsigned int);
41
42 #endif /* _M68K_MACHDEP_H */