x86: Move mpc_apic_id to x86_init_ops
[firefly-linux-kernel-4.4.55.git] / arch / x86 / include / asm / x86_init.h
1 #ifndef _ASM_X86_PLATFORM_H
2 #define _ASM_X86_PLATFORM_H
3
4 struct mpc_cpu;
5
6 /**
7  * struct x86_init_mpparse - platform specific mpparse ops
8  * @mpc_record:                 platform specific mpc record accounting
9  * @setup_ioapic_ids:           platform specific ioapic id override
10  * @mpc_apic_id:                platform specific mpc apic id assignment
11  */
12 struct x86_init_mpparse {
13         void (*mpc_record)(unsigned int mode);
14         void (*setup_ioapic_ids)(void);
15         int (*mpc_apic_id)(struct mpc_cpu *m);
16 };
17
18 /**
19  * struct x86_init_resources - platform specific resource related ops
20  * @probe_roms:                 probe BIOS roms
21  * @reserve_resources:          reserve the standard resources for the
22  *                              platform
23  * @reserve_ebda_region:        reserve the extended bios data area
24  * @memory_setup:               platform specific memory setup
25  *
26  */
27 struct x86_init_resources {
28         void (*probe_roms)(void);
29         void (*reserve_resources)(void);
30         void (*reserve_ebda_region)(void);
31         char *(*memory_setup)(void);
32 };
33
34 /**
35  * struct x86_init_ops - functions for platform specific setup
36  *
37  */
38 struct x86_init_ops {
39         struct x86_init_resources       resources;
40         struct x86_init_mpparse         mpparse;
41 };
42
43 extern struct x86_init_ops x86_init;
44
45 extern void x86_init_noop(void);
46 extern void x86_init_uint_noop(unsigned int unused);
47
48 #endif