proto.h 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  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 size_zones(unsigned long *z, unsigned long *h,
  21. unsigned long start_pfn, unsigned long end_pfn);
  22. extern void system_call(void);
  23. extern int kernel_syscall(void);
  24. extern void syscall_init(void);
  25. extern void ia32_syscall(void);
  26. extern void ia32_cstar_target(void);
  27. extern void ia32_sysenter_target(void);
  28. extern void config_acpi_tables(void);
  29. extern void ia32_syscall(void);
  30. extern void iommu_hole_init(void);
  31. extern void time_init_gtod(void);
  32. extern int pmtimer_mark_offset(void);
  33. extern unsigned int do_gettimeoffset_pm(void);
  34. extern u32 pmtmr_ioport;
  35. extern unsigned long long monotonic_base;
  36. extern int sysctl_vsyscall;
  37. extern void do_softirq_thunk(void);
  38. extern int numa_setup(char *opt);
  39. extern int setup_early_printk(char *);
  40. extern void early_printk(const char *fmt, ...) __attribute__((format(printf,1,2)));
  41. extern void early_identify_cpu(struct cpuinfo_x86 *c);
  42. extern int k8_scan_nodes(unsigned long start, unsigned long end);
  43. extern void numa_initmem_init(unsigned long start_pfn, unsigned long end_pfn);
  44. extern unsigned long numa_free_all_bootmem(void);
  45. extern void reserve_bootmem_generic(unsigned long phys, unsigned len);
  46. extern void free_bootmem_generic(unsigned long phys, unsigned len);
  47. extern void load_gs_index(unsigned gs);
  48. extern unsigned long end_pfn_map;
  49. extern void show_trace(unsigned long * rsp);
  50. extern void show_registers(struct pt_regs *regs);
  51. extern void exception_table_check(void);
  52. extern void acpi_reserve_bootmem(void);
  53. extern void swap_low_mappings(void);
  54. extern void __show_regs(struct pt_regs * regs);
  55. extern void show_regs(struct pt_regs * regs);
  56. extern char *syscall32_page;
  57. extern void syscall32_cpu_init(void);
  58. extern void setup_node_bootmem(int nodeid, unsigned long start, unsigned long end);
  59. extern void check_ioapic(void);
  60. extern void check_efer(void);
  61. extern int unhandled_signal(struct task_struct *tsk, int sig);
  62. extern int unsynchronized_tsc(void);
  63. extern void select_idle_routine(const struct cpuinfo_x86 *c);
  64. extern void gart_parse_options(char *);
  65. extern void __init no_iommu_init(void);
  66. extern unsigned long table_start, table_end;
  67. extern int exception_trace;
  68. extern int force_iommu, no_iommu;
  69. extern int using_apic_timer;
  70. extern int disable_apic;
  71. extern unsigned cpu_khz;
  72. extern int ioapic_force;
  73. extern int skip_ioapic_setup;
  74. extern int acpi_ht;
  75. extern int acpi_disabled;
  76. #ifdef CONFIG_GART_IOMMU
  77. extern int fallback_aper_order;
  78. extern int fallback_aper_force;
  79. extern int iommu_aperture;
  80. extern int iommu_aperture_allowed;
  81. extern int iommu_aperture_disabled;
  82. extern int fix_aperture;
  83. #else
  84. #define iommu_aperture 0
  85. #define iommu_aperture_allowed 0
  86. #endif
  87. extern int force_iommu;
  88. extern int reboot_force;
  89. extern void smp_local_timer_interrupt(struct pt_regs * regs);
  90. long do_arch_prctl(struct task_struct *task, int code, unsigned long addr);
  91. #define round_up(x,y) (((x) + (y) - 1) & ~((y)-1))
  92. #define round_down(x,y) ((x) & ~((y)-1))
  93. #endif