1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _M68K_MACHDEP_H
3 #define _M68K_MACHDEP_H
4 
5 #include <linux/seq_file.h>
6 #include <linux/interrupt.h>
7 #include <linux/time.h>
8 
9 struct pt_regs;
10 struct mktime;
11 struct rtc_time;
12 struct rtc_pll_info;
13 struct buffer_head;
14 
15 extern void (*mach_sched_init) (void);
16 /* machine dependent irq functions */
17 extern void (*mach_init_IRQ) (void);
18 extern void (*mach_get_model) (char *model);
19 extern void (*mach_get_hardware_list) (struct seq_file *m);
20 /* machine dependent timer functions */
21 extern int (*mach_hwclk)(int, struct rtc_time*);
22 extern int (*mach_get_rtc_pll)(struct rtc_pll_info *);
23 extern int (*mach_set_rtc_pll)(struct rtc_pll_info *);
24 extern void (*mach_reset)( void );
25 extern void (*mach_halt)( void );
26 extern unsigned long (*mach_hd_init) (unsigned long, unsigned long);
27 extern void (*mach_hd_setup)(char *, int *);
28 extern void (*mach_heartbeat) (int);
29 extern void (*mach_l2_flush) (int);
30 extern void (*mach_beep) (unsigned int, unsigned int);
31 
32 /* Hardware clock functions */
33 extern void hw_timer_init(void);
34 #ifdef CONFIG_HEARTBEAT
35 extern void timer_heartbeat(void);
36 #else
timer_heartbeat(void)37 static inline void timer_heartbeat(void)
38 {
39 }
40 #endif
41 
42 extern void config_BSP(char *command, int len);
43 
44 #endif /* _M68K_MACHDEP_H */
45