blob: a3df0c3faa0ee8be783d3d0fe1cf6b89fad6e7dd [file] [log] [blame]
Ralf Baechle41c594a2006-04-05 09:45:45 +01001/*
2 * Definitions and decalrations for MIPS MT support
3 * that are common between SMTC, VSMP, and/or AP/SP
4 * kernel models.
5 */
6#ifndef __ASM_MIPS_MT_H
7#define __ASM_MIPS_MT_H
8
Ralf Baechle32fac802007-03-04 18:23:48 +00009#include <linux/cpumask.h>
10
Ralf Baechle07cc0c92007-07-27 19:31:10 +010011/*
12 * How many VPEs and TCs is Linux allowed to use? 0 means no limit.
13 */
14extern int tclimit;
15extern int vpelimit;
16
Ralf Baechle41c594a2006-04-05 09:45:45 +010017extern cpumask_t mt_fpu_cpumask;
18extern unsigned long mt_fpemul_threshold;
19
20extern void mips_mt_regdump(unsigned long previous_mvpcontrol_value);
Paul Burtond94c90f2014-03-24 10:19:25 +000021
22#ifdef CONFIG_MIPS_MT
Ralf Baechle41c594a2006-04-05 09:45:45 +010023extern void mips_mt_set_cpuoptions(void);
Paul Burtond94c90f2014-03-24 10:19:25 +000024#else
25static inline void mips_mt_set_cpuoptions(void) { }
26#endif
Ralf Baechle41c594a2006-04-05 09:45:45 +010027
Ralf Baechle27a3bba2007-02-07 13:48:59 +000028struct class;
29extern struct class *mt_class;
30
Ralf Baechle41c594a2006-04-05 09:45:45 +010031#endif /* __ASM_MIPS_MT_H */