2005-04-16 15:20:36 -07:00
# ifndef _ASM_X8664_PROTO_H
# define _ASM_X8664_PROTO_H 1
# include <asm/ldt.h>
/* misc architecture specific prototypes */
struct cpuinfo_x86 ;
struct pt_regs ;
extern void start_kernel ( void ) ;
extern void pda_init ( int ) ;
extern void early_idt_handler ( void ) ;
extern void mcheck_init ( struct cpuinfo_x86 * c ) ;
extern void init_memory_mapping ( unsigned long start , unsigned long end ) ;
extern void system_call ( void ) ;
extern int kernel_syscall ( void ) ;
extern void syscall_init ( void ) ;
extern void ia32_syscall ( void ) ;
extern void ia32_cstar_target ( void ) ;
extern void ia32_sysenter_target ( void ) ;
extern void config_acpi_tables ( void ) ;
extern void ia32_syscall ( void ) ;
2005-05-16 21:53:28 -07:00
extern int pmtimer_mark_offset ( void ) ;
2006-02-03 21:50:56 +01:00
extern void pmtimer_resume ( void ) ;
2006-02-03 21:51:41 +01:00
extern void pmtimer_wait ( unsigned ) ;
2005-05-16 21:53:28 -07:00
extern unsigned int do_gettimeoffset_pm ( void ) ;
2006-02-03 21:50:44 +01:00
# ifdef CONFIG_X86_PM_TIMER
2005-05-16 21:53:28 -07:00
extern u32 pmtmr_ioport ;
2006-02-03 21:50:44 +01:00
# else
# define pmtmr_ioport 0
# endif
2006-02-03 21:50:50 +01:00
extern int nohpet ;
2005-04-16 15:20:36 -07:00
extern void early_printk ( const char * fmt , . . . ) __attribute__ ( ( format ( printf , 1 , 2 ) ) ) ;
extern void early_identify_cpu ( struct cpuinfo_x86 * c ) ;
extern int k8_scan_nodes ( unsigned long start , unsigned long end ) ;
extern void numa_initmem_init ( unsigned long start_pfn , unsigned long end_pfn ) ;
extern unsigned long numa_free_all_bootmem ( void ) ;
extern void reserve_bootmem_generic ( unsigned long phys , unsigned len ) ;
extern void load_gs_index ( unsigned gs ) ;
extern unsigned long end_pfn_map ;
2006-06-26 13:57:32 +02:00
extern void show_trace ( struct task_struct * , struct pt_regs * , unsigned long * rsp ) ;
2005-04-16 15:20:36 -07:00
extern void show_registers ( struct pt_regs * regs ) ;
extern void exception_table_check ( void ) ;
extern void acpi_reserve_bootmem ( void ) ;
extern void swap_low_mappings ( void ) ;
extern void __show_regs ( struct pt_regs * regs ) ;
extern void show_regs ( struct pt_regs * regs ) ;
extern void syscall32_cpu_init ( void ) ;
extern void setup_node_bootmem ( int nodeid , unsigned long start , unsigned long end ) ;
2006-09-26 10:52:30 +02:00
extern void early_quirks ( void ) ;
2005-04-16 15:20:36 -07:00
extern void check_efer ( void ) ;
extern void select_idle_routine ( const struct cpuinfo_x86 * c ) ;
2006-01-11 22:44:42 +01:00
2005-04-16 15:20:36 -07:00
extern unsigned long table_start , table_end ;
extern int exception_trace ;
extern unsigned cpu_khz ;
2007-05-02 19:27:06 +02:00
extern unsigned tsc_khz ;
2005-04-16 15:20:36 -07:00
extern int reboot_force ;
2006-02-16 23:42:07 +01:00
extern int notsc_setup ( char * ) ;
2005-04-16 15:20:36 -07:00
2006-10-21 18:37:03 +02:00
extern int timer_over_8254 ;
2006-09-26 10:52:33 +02:00
extern int gsi_irq_sharing ( int gsi ) ;
2007-05-02 19:27:12 +02:00
extern int force_mwait ;
2005-04-16 15:20:36 -07:00
long do_arch_prctl ( struct task_struct * task , int code , unsigned long addr ) ;
# define round_up(x,y) (((x) + (y) - 1) & ~((y)-1))
# define round_down(x,y) ((x) & ~((y)-1))
# endif