]>
Commit | Line | Data |
---|---|---|
57844a8f TG |
1 | /* |
2 | * Copyright (C) 2009 Thomas Gleixner <tglx@linutronix.de> | |
3 | * | |
4 | * For licencing details see kernel-base/COPYING | |
5 | */ | |
6 | #include <linux/init.h> | |
7 | ||
816c25e7 | 8 | #include <asm/bios_ebda.h> |
6f30c1ac | 9 | #include <asm/paravirt.h> |
fd6c6661 | 10 | #include <asm/mpspec.h> |
8fee697d | 11 | #include <asm/setup.h> |
736decac | 12 | #include <asm/apic.h> |
6b18ae3e | 13 | #include <asm/e820.h> |
845b3944 | 14 | #include <asm/time.h> |
d9112f43 | 15 | #include <asm/irq.h> |
2d826404 | 16 | #include <asm/tsc.h> |
57844a8f TG |
17 | |
18 | void __cpuinit x86_init_noop(void) { } | |
f4848472 | 19 | void __init x86_init_uint_noop(unsigned int unused) { } |
030cb6c0 | 20 | void __init x86_init_pgd_noop(pgd_t *unused) { } |
57844a8f TG |
21 | |
22 | /* | |
23 | * The platform setup functions are preset with the default functions | |
24 | * for standard PC hardware. | |
25 | */ | |
26 | struct __initdata x86_init_ops x86_init = { | |
f7cf5a5b TG |
27 | |
28 | .resources = { | |
29 | .probe_roms = x86_init_noop, | |
8fee697d | 30 | .reserve_resources = reserve_standard_io_resources, |
6b18ae3e | 31 | .memory_setup = default_machine_specific_memory_setup, |
f7cf5a5b | 32 | }, |
f4848472 TG |
33 | |
34 | .mpparse = { | |
35 | .mpc_record = x86_init_uint_noop, | |
de934103 | 36 | .setup_ioapic_ids = x86_init_noop, |
fd6c6661 | 37 | .mpc_apic_id = default_mpc_apic_id, |
72302142 | 38 | .smp_read_mpc_oem = default_smp_read_mpc_oem, |
90e1c696 | 39 | .mpc_oem_bus_info = default_mpc_oem_bus_info, |
b3f1b617 TG |
40 | .find_smp_config = default_find_smp_config, |
41 | .get_smp_config = default_get_smp_config, | |
f4848472 | 42 | }, |
d9112f43 TG |
43 | |
44 | .irqs = { | |
45 | .pre_vector_init = init_ISA_irqs, | |
66bcaf0b | 46 | .intr_init = native_init_IRQ, |
428cf902 | 47 | .trap_init = x86_init_noop, |
d9112f43 | 48 | }, |
42bbdb43 TG |
49 | |
50 | .oem = { | |
51 | .arch_setup = x86_init_noop, | |
6f30c1ac | 52 | .banner = default_banner, |
42bbdb43 | 53 | }, |
030cb6c0 TG |
54 | |
55 | .paging = { | |
56 | .pagetable_setup_start = native_pagetable_setup_start, | |
57 | .pagetable_setup_done = native_pagetable_setup_done, | |
58 | }, | |
736decac TG |
59 | |
60 | .timers = { | |
61 | .setup_percpu_clockev = setup_boot_APIC_clock, | |
845b3944 TG |
62 | .tsc_pre_init = x86_init_noop, |
63 | .timer_init = hpet_time_init, | |
736decac TG |
64 | }, |
65 | }; | |
66 | ||
67 | __cpuinitdata struct x86_cpuinit_ops x86_cpuinit = { | |
68 | .setup_percpu_clockev = setup_secondary_APIC_clock, | |
57844a8f | 69 | }; |
2d826404 TG |
70 | |
71 | struct x86_platform_ops x86_platform = { | |
72 | .calibrate_tsc = native_calibrate_tsc, | |
73 | }; |