Commit | Line | Data |
---|---|---|
57844a8f TG |
1 | #ifndef _ASM_X86_PLATFORM_H |
2 | #define _ASM_X86_PLATFORM_H | |
3 | ||
52fdb568 | 4 | struct mpc_bus; |
fd6c6661 | 5 | struct mpc_cpu; |
72302142 | 6 | struct mpc_table; |
fd6c6661 | 7 | |
f4848472 TG |
8 | /** |
9 | * struct x86_init_mpparse - platform specific mpparse ops | |
10 | * @mpc_record: platform specific mpc record accounting | |
de934103 | 11 | * @setup_ioapic_ids: platform specific ioapic id override |
fd6c6661 | 12 | * @mpc_apic_id: platform specific mpc apic id assignment |
72302142 | 13 | * @smp_read_mpc_oem: platform specific oem mpc table setup |
52fdb568 | 14 | * @mpc_oem_pci_bus: platform specific pci bus setup (default NULL) |
90e1c696 | 15 | * @mpc_oem_bus_info: platform specific mpc bus info |
f4848472 TG |
16 | */ |
17 | struct x86_init_mpparse { | |
18 | void (*mpc_record)(unsigned int mode); | |
de934103 | 19 | void (*setup_ioapic_ids)(void); |
fd6c6661 | 20 | int (*mpc_apic_id)(struct mpc_cpu *m); |
72302142 | 21 | void (*smp_read_mpc_oem)(struct mpc_table *mpc); |
52fdb568 | 22 | void (*mpc_oem_pci_bus)(struct mpc_bus *m); |
90e1c696 | 23 | void (*mpc_oem_bus_info)(struct mpc_bus *m, char *name); |
f4848472 TG |
24 | }; |
25 | ||
f7cf5a5b TG |
26 | /** |
27 | * struct x86_init_resources - platform specific resource related ops | |
28 | * @probe_roms: probe BIOS roms | |
8fee697d TG |
29 | * @reserve_resources: reserve the standard resources for the |
30 | * platform | |
816c25e7 | 31 | * @reserve_ebda_region: reserve the extended bios data area |
6b18ae3e | 32 | * @memory_setup: platform specific memory setup |
f7cf5a5b TG |
33 | * |
34 | */ | |
35 | struct x86_init_resources { | |
36 | void (*probe_roms)(void); | |
8fee697d | 37 | void (*reserve_resources)(void); |
816c25e7 | 38 | void (*reserve_ebda_region)(void); |
6b18ae3e | 39 | char *(*memory_setup)(void); |
f7cf5a5b TG |
40 | }; |
41 | ||
57844a8f TG |
42 | /** |
43 | * struct x86_init_ops - functions for platform specific setup | |
44 | * | |
45 | */ | |
46 | struct x86_init_ops { | |
f4848472 TG |
47 | struct x86_init_resources resources; |
48 | struct x86_init_mpparse mpparse; | |
57844a8f TG |
49 | }; |
50 | ||
51 | extern struct x86_init_ops x86_init; | |
52 | ||
53 | extern void x86_init_noop(void); | |
f4848472 | 54 | extern void x86_init_uint_noop(unsigned int unused); |
57844a8f TG |
55 | |
56 | #endif |