blob: 953ca21da8eec1e09d1c8a8d9077e0bfce543d57 [file] [log] [blame]
Greg Ungererb0860c12010-09-07 15:48:43 +10001#ifndef _M68K_MACHDEP_H
2#define _M68K_MACHDEP_H
3
4#include <linux/seq_file.h>
5#include <linux/interrupt.h>
Stephen Warrenc8d5ba12012-11-08 11:34:55 -07006#include <linux/time.h>
Greg Ungererb0860c12010-09-07 15:48:43 +10007
8struct pt_regs;
9struct mktime;
10struct rtc_time;
11struct rtc_pll_info;
12struct buffer_head;
13
14extern void (*mach_sched_init) (irq_handler_t handler);
15/* machine dependent irq functions */
16extern void (*mach_init_IRQ) (void);
17extern void (*mach_get_model) (char *model);
18extern void (*mach_get_hardware_list) (struct seq_file *m);
19/* machine dependent timer functions */
Greg Ungererb0860c12010-09-07 15:48:43 +100020extern int (*mach_hwclk)(int, struct rtc_time*);
21extern unsigned int (*mach_get_ss)(void);
22extern int (*mach_get_rtc_pll)(struct rtc_pll_info *);
23extern int (*mach_set_rtc_pll)(struct rtc_pll_info *);
24extern int (*mach_set_clock_mmss)(unsigned long);
Greg Ungererb0860c12010-09-07 15:48:43 +100025extern void (*mach_reset)( void );
26extern void (*mach_halt)( void );
27extern void (*mach_power_off)( void );
28extern unsigned long (*mach_hd_init) (unsigned long, unsigned long);
29extern void (*mach_hd_setup)(char *, int *);
30extern long mach_max_dma_address;
31extern void (*mach_heartbeat) (int);
32extern void (*mach_l2_flush) (int);
33extern void (*mach_beep) (unsigned int, unsigned int);
34
35/* Hardware clock functions */
Greg Ungerer35aefb22012-01-23 15:34:58 +100036extern void hw_timer_init(irq_handler_t handler);
Greg Ungererb0860c12010-09-07 15:48:43 +100037extern unsigned long hw_timer_offset(void);
Greg Ungererb0860c12010-09-07 15:48:43 +100038
39extern void config_BSP(char *command, int len);
40
41#endif /* _M68K_MACHDEP_H */