2003-04-22 21:02:15 +02:00
|
|
|
#ifndef CPU_CPU_H
|
|
|
|
#define CPU_CPU_H
|
|
|
|
|
2004-10-14 22:15:40 +02:00
|
|
|
struct device;
|
2004-11-18 23:38:08 +01:00
|
|
|
struct bus;
|
2004-11-12 22:00:29 +01:00
|
|
|
#include <arch/cpu.h>
|
2003-04-22 21:02:15 +02:00
|
|
|
|
2004-10-14 22:15:40 +02:00
|
|
|
void cpu_initialize(void);
|
2004-10-16 08:20:29 +02:00
|
|
|
void initialize_cpus(struct bus *cpu_bus);
|
2009-10-30 03:08:07 +01:00
|
|
|
void secondary_cpu_init(void);
|
|
|
|
|
|
|
|
#if CONFIG_WAIT_BEFORE_CPUS_INIT==0
|
|
|
|
#define cpus_ready_for_init() do {} while(0)
|
|
|
|
#else
|
|
|
|
void cpus_ready_for_init(void);
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if CONFIG_HAVE_SMI_HANDLER
|
|
|
|
void smm_init(void);
|
|
|
|
#endif
|
2003-04-22 21:02:15 +02:00
|
|
|
|
2004-10-14 22:15:40 +02:00
|
|
|
#define __cpu_driver __attribute__ ((used,__section__(".rodata.cpu_driver")))
|
2004-10-14 22:13:01 +02:00
|
|
|
/** start of compile time generated pci driver array */
|
2004-10-14 22:15:40 +02:00
|
|
|
extern struct cpu_driver cpu_drivers[];
|
2004-10-14 22:13:01 +02:00
|
|
|
/** end of compile time generated pci driver array */
|
2004-10-14 22:15:40 +02:00
|
|
|
extern struct cpu_driver ecpu_drivers[];
|
2003-04-22 21:02:15 +02:00
|
|
|
|
|
|
|
#endif /* CPU_CPU_H */
|