/* * */ #ifndef _ASSEMBLER_ struct cpulaunch { unsigned long pc; unsigned long gp; unsigned long sp; unsigned long a0; unsigned long _pad[3]; /* pad to cache line size to avoid thrashing */ unsigned long flags; }; #else #define LOG2CPULAUNCH 5 #define LAUNCH_PC 0 #define LAUNCH_GP 4 #define LAUNCH_SP 8 #define LAUNCH_A0 12 #define LAUNCH_FLAGS 28 #endif #define LAUNCH_FREADY 1 #define LAUNCH_FGO 2 #define LAUNCH_FGONE 4 #define CPULAUNCH 0x00000f00 #define NCPULAUNCH 8 /* Polling period in count cycles for secondary CPU's */ #define LAUNCHPERIOD 10000