xref: /linux/arch/mips/include/asm/mips-boards/launch.h (revision a4eb44a6435d6d8f9e642407a4a06f65eb90ca04)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  *
4  */
5 
6 #ifndef _ASM_MIPS_BOARDS_LAUNCH_H
7 #define _ASM_MIPS_BOARDS_LAUNCH_H
8 
9 #ifndef _ASSEMBLER_
10 
11 struct cpulaunch {
12     unsigned long	pc;
13     unsigned long	gp;
14     unsigned long	sp;
15     unsigned long	a0;
16     unsigned long	_pad[3]; /* pad to cache line size to avoid thrashing */
17     unsigned long	flags;
18 };
19 
20 #else
21 
22 #define LOG2CPULAUNCH	5
23 #define LAUNCH_PC	0
24 #define LAUNCH_GP	4
25 #define LAUNCH_SP	8
26 #define LAUNCH_A0	12
27 #define LAUNCH_FLAGS	28
28 
29 #endif
30 
31 #define LAUNCH_FREADY	1
32 #define LAUNCH_FGO	2
33 #define LAUNCH_FGONE	4
34 
35 #define CPULAUNCH	0x00000f00
36 #define NCPULAUNCH	8
37 
38 /* Polling period in count cycles for secondary CPU's */
39 #define LAUNCHPERIOD	10000
40 
41 #endif /* _ASM_MIPS_BOARDS_LAUNCH_H */
42