xref: /linux/arch/mips/include/asm/mips_mt.h (revision 8617d7d6298f54dfef4038281863270b5864fe83)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
2384740dcSRalf Baechle /*
37a448b57SAndrea Gelmini  * Definitions and declarations for MIPS MT support that are common between
4b633648cSRalf Baechle  * the VSMP, and AP/SP kernel models.
5384740dcSRalf Baechle  */
6384740dcSRalf Baechle #ifndef __ASM_MIPS_MT_H
7384740dcSRalf Baechle #define __ASM_MIPS_MT_H
8384740dcSRalf Baechle 
9384740dcSRalf Baechle #include <linux/cpumask.h>
10384740dcSRalf Baechle 
11384740dcSRalf Baechle /*
12384740dcSRalf Baechle  * How many VPEs and TCs is Linux allowed to use?  0 means no limit.
13384740dcSRalf Baechle  */
14384740dcSRalf Baechle extern int tclimit;
15384740dcSRalf Baechle extern int vpelimit;
16384740dcSRalf Baechle 
17384740dcSRalf Baechle extern cpumask_t mt_fpu_cpumask;
18384740dcSRalf Baechle extern unsigned long mt_fpemul_threshold;
19384740dcSRalf Baechle 
20d94c90f8SPaul Burton #ifdef CONFIG_MIPS_MT
21384740dcSRalf Baechle extern void mips_mt_set_cpuoptions(void);
22d94c90f8SPaul Burton #else
mips_mt_set_cpuoptions(void)23d94c90f8SPaul Burton static inline void mips_mt_set_cpuoptions(void) { }
24d94c90f8SPaul Burton #endif
25384740dcSRalf Baechle 
26384740dcSRalf Baechle struct class;
27*e5d9592cSRicardo B. Marliere extern const struct class mt_class;
28384740dcSRalf Baechle 
29384740dcSRalf Baechle #endif /* __ASM_MIPS_MT_H */
30