36 lines
		
	
	
		
			592 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			592 B
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 *
 | 
						|
 */
 | 
						|
 | 
						|
#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
 |