Linux Kernel
3.7.1
|
Go to the source code of this file.
Macros | |
#define | UDBG_UNDEFINED (1 << 0) |
#define | UDBG_SYSCALL (1 << 1) |
#define | UDBG_BADABORT (1 << 2) |
#define | UDBG_SEGV (1 << 3) |
#define | UDBG_BUS (1 << 4) |
Functions | |
void | cpu_init (void) |
void | soft_restart (unsigned long) |
void | disable_hlt (void) |
void | enable_hlt (void) |
Variables | |
void(* | arm_pm_restart )(char str, const char *cmd) |
void(* | arm_pm_idle )(void) |
unsigned int | user_debug |
#define UDBG_BADABORT (1 << 2) |
Definition at line 18 of file system_misc.h.
#define UDBG_BUS (1 << 4) |
Definition at line 20 of file system_misc.h.
#define UDBG_SEGV (1 << 3) |
Definition at line 19 of file system_misc.h.
#define UDBG_SYSCALL (1 << 1) |
Definition at line 17 of file system_misc.h.
#define UDBG_UNDEFINED (1 << 0) |
Definition at line 16 of file system_misc.h.
cpu_init
This is our initial entry point for each CPU, and is invoked on the boot CPU prior to calling start_kernel(). For SMP, a combination of this and start_secondary() will bring up each processor to a ready state prior to hand forking the idle loop.
We do all of the basic processor init here, including setting up the caches, FPU, DSP, etc. By the time start_kernel() is hit (and subsequently platform_setup()) things like determining the CPU subtype and initial configuration will all be done.
Each processor family is still responsible for doing its own probing and cache configuration in cpu_probe().
unsigned int user_debug |