coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
cpu.h
Go to the documentation of this file.
1 #ifndef CPU_CPU_H
2 #define CPU_CPU_H
3 
4 #include <arch/cpu.h>
5 #include <stdint.h>
6 
7 void cpu_initialize(unsigned int cpu_index);
8 /* Returns default APIC id based on logical_cpu number or < 0 on failure. */
9 int cpu_get_apic_id(int logical_cpu);
11 /* Function to keep track of cpu default apic_id */
12 void cpu_add_map_entry(unsigned int index);
13 struct bus;
14 void initialize_cpus(struct bus *cpu_bus);
15 asmlinkage void secondary_cpu_init(unsigned int cpu_index);
16 int cpu_phys_address_size(void);
17 
18 #if ENV_RAMSTAGE
19 #define __cpu_driver __attribute__((used, __section__(".rodata.cpu_driver")))
20 #else
21 #define __cpu_driver __attribute__((unused))
22 #endif
23 
24 /** start of compile time generated pci driver array */
25 extern struct cpu_driver _cpu_drivers[];
26 /** end of compile time generated pci driver array */
27 extern struct cpu_driver _ecpu_drivers[];
28 
29 #endif /* CPU_CPU_H */
#define asmlinkage
Definition: cpu.h:8
int cpu_index(void)
Definition: cpu.c:332
void initialize_cpus(struct bus *cpu_bus)
int cpu_get_apic_id(int logical_cpu)
Definition: cpu.c:223
uintptr_t cpu_get_lapic_addr(void)
Definition: lapic.c:63
int cpu_phys_address_size(void)
Definition: cpu_common.c:46
struct cpu_driver _cpu_drivers[]
start of compile time generated pci driver array
void cpu_initialize(unsigned int cpu_index)
Definition: cpu.c:231
void cpu_add_map_entry(unsigned int index)
Definition: cpu.c:217
asmlinkage void secondary_cpu_init(unsigned int cpu_index)
struct cpu_driver _ecpu_drivers[]
end of compile time generated pci driver array
unsigned long uintptr_t
Definition: stdint.h:21
Definition: device.h:76
Definition: cpu.h:13