proto.h 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. #ifndef _ASM_X8664_PROTO_H
  2. #define _ASM_X8664_PROTO_H 1
  3. #include <asm/ldt.h>
  4. /* misc architecture specific prototypes */
  5. struct cpuinfo_x86;
  6. struct pt_regs;
  7. extern void start_kernel(void);
  8. extern void pda_init(int);
  9. extern void zap_low_mappings(int cpu);
  10. extern void early_idt_handler(void);
  11. extern void mcheck_init(struct cpuinfo_x86 *c);
  12. #ifdef CONFIG_MTRR
  13. extern void mtrr_ap_init(void);
  14. extern void mtrr_bp_init(void);
  15. #else
  16. #define mtrr_ap_init() do {} while (0)
  17. #define mtrr_bp_init() do {} while (0)
  18. #endif
  19. extern void init_memory_mapping(unsigned long start, unsigned long end);
  20. extern void system_call(void);
  21. extern int kernel_syscall(void);
  22. extern void syscall_init(void);
  23. extern void ia32_syscall(void);
  24. extern void ia32_cstar_target(void);
  25. extern void ia32_sysenter_target(void);
  26. extern void config_acpi_tables(void);
  27. extern void ia32_syscall(void);
  28. extern int pmtimer_mark_offset(void);
  29. extern void pmtimer_resume(void);
  30. extern void pmtimer_wait(unsigned);
  31. extern unsigned int do_gettimeoffset_pm(void);
  32. #ifdef CONFIG_X86_PM_TIMER
  33. extern u32 pmtmr_ioport;
  34. #else
  35. #define pmtmr_ioport 0
  36. #endif
  37. extern unsigned long long monotonic_base;
  38. extern int sysctl_vsyscall;
  39. extern int nohpet;
  40. extern unsigned long vxtime_hz;
  41. extern void time_init_gtod(void);
  42. extern void early_printk(const char *fmt, ...) __attribute__((format(printf,1,2)));
  43. extern void early_identify_cpu(struct cpuinfo_x86 *c);
  44. extern int k8_scan_nodes(unsigned long start, unsigned long end);
  45. extern void numa_initmem_init(unsigned long start_pfn, unsigned long end_pfn);
  46. extern unsigned long numa_free_all_bootmem(void);
  47. extern void reserve_bootmem_generic(unsigned long phys, unsigned len);
  48. extern void free_bootmem_generic(unsigned long phys, unsigned len);
  49. extern void load_gs_index(unsigned gs);
  50. extern void stop_timer_interrupt(void);
  51. extern void main_timer_handler(void);
  52. extern unsigned long end_pfn_map;
  53. extern void show_trace(struct task_struct *, struct pt_regs *, unsigned long * rsp);
  54. extern void show_registers(struct pt_regs *regs);
  55. extern void exception_table_check(void);
  56. extern void acpi_reserve_bootmem(void);
  57. extern void swap_low_mappings(void);
  58. extern void __show_regs(struct pt_regs * regs);
  59. extern void show_regs(struct pt_regs * regs);
  60. extern char *syscall32_page;
  61. extern void syscall32_cpu_init(void);
  62. extern void setup_node_bootmem(int nodeid, unsigned long start, unsigned long end);
  63. extern void early_quirks(void);
  64. extern void check_efer(void);
  65. extern int unhandled_signal(struct task_struct *tsk, int sig);
  66. extern int unsynchronized_tsc(void);
  67. extern void select_idle_routine(const struct cpuinfo_x86 *c);
  68. extern unsigned long table_start, table_end;
  69. extern int exception_trace;
  70. extern unsigned cpu_khz;
  71. extern void no_iommu_init(void);
  72. extern int force_iommu, no_iommu;
  73. extern int iommu_detected;
  74. #ifdef CONFIG_IOMMU
  75. extern void gart_iommu_init(void);
  76. extern void gart_parse_options(char *);
  77. extern void iommu_hole_init(void);
  78. extern int fallback_aper_order;
  79. extern int fallback_aper_force;
  80. extern int iommu_aperture;
  81. extern int iommu_aperture_allowed;
  82. extern int iommu_aperture_disabled;
  83. extern int fix_aperture;
  84. #else
  85. #define iommu_aperture 0
  86. #define iommu_aperture_allowed 0
  87. #endif
  88. extern int reboot_force;
  89. extern int notsc_setup(char *);
  90. extern int timer_over_8254;
  91. extern int gsi_irq_sharing(int gsi);
  92. extern void smp_local_timer_interrupt(void);
  93. long do_arch_prctl(struct task_struct *task, int code, unsigned long addr);
  94. #define round_up(x,y) (((x) + (y) - 1) & ~((y)-1))
  95. #define round_down(x,y) ((x) & ~((y)-1))
  96. #endif