5 #include <linux/config.h>
8 #include <asm-m68k/machdep.h>
13 struct machdep_calls
{
14 void (*setup_arch
)(unsigned long * memory_start_p
,
15 unsigned long * memory_end_p
);
16 /* Optional, may be NULL. */
17 int (*setup_residual
)(char *buffer
);
18 /* Optional, may be NULL. */
19 int (*get_cpuinfo
)(char *buffer
);
20 /* Optional, may be NULL. */
21 unsigned int (*irq_cannonicalize
)(unsigned int irq
);
22 void (*init_IRQ
)(void);
23 void (*do_IRQ
)(struct pt_regs
*regs
, int cpu
, int isfake
);
25 /* A general init function, called by ppc_init in init/main.c.
29 void (*restart
)(char *cmd
);
30 void (*power_off
)(void);
33 void (*time_init
)(void); /* Optional, may be NULL */
34 int (*set_rtc_time
)(unsigned long nowtime
);
35 unsigned long (*get_rtc_time
)(void);
36 void (*calibrate_decr
)(void);
38 void (*heartbeat
)(void);
39 unsigned long heartbeat_reset
;
40 unsigned long heartbeat_count
;
42 unsigned char (*nvram_read_val
)(int addr
);
43 void (*nvram_write_val
)(int addr
, unsigned char val
);
45 /* Tons of keyboard stuff. */
46 int (*kbd_setkeycode
)(unsigned int scancode
,
47 unsigned int keycode
);
48 int (*kbd_getkeycode
)(unsigned int scancode
);
49 int (*kbd_translate
)(unsigned char scancode
,
50 unsigned char *keycode
,
52 char (*kbd_unexpected_up
)(unsigned char keycode
);
53 void (*kbd_leds
)(unsigned char leds
);
54 void (*kbd_init_hw
)(void);
55 #ifdef CONFIG_MAGIC_SYSRQ
56 unsigned char *ppc_kbd_sysrq_xlate
;
60 int (*pcibios_read_config_byte
)(unsigned char bus
,
61 unsigned char dev_fn
, unsigned char offset
, unsigned char *val
);
62 int (*pcibios_read_config_word
)(unsigned char bus
,
63 unsigned char dev_fn
, unsigned char offset
, unsigned short *val
);
64 int (*pcibios_read_config_dword
)(unsigned char bus
,
65 unsigned char dev_fn
, unsigned char offset
, unsigned int *val
);
66 int (*pcibios_write_config_byte
)(unsigned char bus
,
67 unsigned char dev_fn
, unsigned char offset
, unsigned char val
);
68 int (*pcibios_write_config_word
)(unsigned char bus
,
69 unsigned char dev_fn
, unsigned char offset
, unsigned short val
);
70 int (*pcibios_write_config_dword
)(unsigned char bus
,
71 unsigned char dev_fn
, unsigned char offset
, unsigned int val
);
72 void (*pcibios_fixup
)(void);
75 extern struct machdep_calls ppc_md
;
76 extern char cmd_line
[512];
78 extern void setup_pci_ptrs(void);
80 #endif /* _PPC_MACHDEP_H */