1/* 2 * 3 */ 4 5#ifndef _ASSEMBLER_ 6 7struct cpulaunch { 8 unsigned long pc; 9 unsigned long gp; 10 unsigned long sp; 11 unsigned long a0; 12 unsigned long _pad[3]; /* pad to cache line size to avoid thrashing */ 13 unsigned long flags; 14}; 15 16#else 17 18#define LOG2CPULAUNCH 5 19#define LAUNCH_PC 0 20#define LAUNCH_GP 4 21#define LAUNCH_SP 8 22#define LAUNCH_A0 12 23#define LAUNCH_FLAGS 28 24 25#endif 26 27#define LAUNCH_FREADY 1 28#define LAUNCH_FGO 2 29#define LAUNCH_FGONE 4 30 31#define CPULAUNCH 0x00000f00 32#define NCPULAUNCH 8 33 34/* Polling period in count cycles for secondary CPU's */ 35#define LAUNCHPERIOD 10000 36