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