2003-04-22 21:02:15 +02:00
|
|
|
#ifndef CPU_CPU_H
|
|
|
|
#define CPU_CPU_H
|
|
|
|
|
2004-11-12 22:00:29 +01:00
|
|
|
#include <arch/cpu.h>
|
2003-04-22 21:02:15 +02:00
|
|
|
|
2012-04-27 00:39:17 +02:00
|
|
|
#if !defined(__ROMCC__)
|
2004-10-14 22:15:40 +02:00
|
|
|
void cpu_initialize(void);
|
2012-04-27 00:39:17 +02:00
|
|
|
struct bus;
|
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);
|
|
|
|
|
2011-04-21 22:45:45 +02:00
|
|
|
#if !CONFIG_WAIT_BEFORE_CPUS_INIT
|
2009-10-30 03:08:07 +01:00
|
|
|
#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);
|
2010-02-22 07:09:43 +01:00
|
|
|
void smm_lock(void);
|
|
|
|
void smm_setup_structures(void *gnvs, void *tcg, void *smi1);
|
2009-10-30 03:08:07 +01:00
|
|
|
#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[];
|
2012-04-27 00:39:17 +02:00
|
|
|
#endif /* !__ROMCC__ */
|
2003-04-22 21:02:15 +02:00
|
|
|
|
|
|
|
#endif /* CPU_CPU_H */
|