Linux-libre 5.4.47-gnu
[librecmc/linux-libre.git] / arch / m68k / include / asm / machdep.h
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) (irq_handler_t handler);
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 unsigned int (*mach_get_ss)(void);
23 extern int (*mach_get_rtc_pll)(struct rtc_pll_info *);
24 extern int (*mach_set_rtc_pll)(struct rtc_pll_info *);
25 extern void (*mach_reset)( void );
26 extern void (*mach_halt)( void );
27 extern void (*mach_power_off)( void );
28 extern unsigned long (*mach_hd_init) (unsigned long, unsigned long);
29 extern void (*mach_hd_setup)(char *, int *);
30 extern long mach_max_dma_address;
31 extern void (*mach_heartbeat) (int);
32 extern void (*mach_l2_flush) (int);
33 extern void (*mach_beep) (unsigned int, unsigned int);
34
35 /* Hardware clock functions */
36 extern void hw_timer_init(irq_handler_t handler);
37 extern unsigned long hw_timer_offset(void);
38
39 extern void config_BSP(char *command, int len);
40
41 #endif /* _M68K_MACHDEP_H */