• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/arch/mips/include/asm/mach-sead3/
1/*
2 * This file is subject to the terms and conditions of the GNU General Public
3 * License.  See the file "COPYING" in the main directory of this archive
4 * for more details.
5 *
6 * Chris Dearman (chris@mips.com)
7 * Copyright (C) 2007 Mips Technologies, Inc.
8 */
9#ifndef __ASM_MACH_MIPS_KERNEL_ENTRY_INIT_H
10#define __ASM_MACH_MIPS_KERNEL_ENTRY_INIT_H
11
12	.macro	kernel_entry_setup
13#ifdef CONFIG_MIPS_MT_SMTC
14	mfc0	t0, CP0_CONFIG
15	bgez	t0, 9f
16	mfc0	t0, CP0_CONFIG, 1
17	bgez	t0, 9f
18	mfc0	t0, CP0_CONFIG, 2
19	bgez	t0, 9f
20	mfc0	t0, CP0_CONFIG, 3
21	and	t0, 1<<2
22	bnez	t0, 0f
239 :
24	/* Assume we came from YAMON... */
25	PTR_LA	v0, 0x9fc00534	/* YAMON print */
26	lw	v0, (v0)
27	move	a0, zero
28	PTR_LA	a1, nonmt_processor
29	jal	v0
30
31	PTR_LA	v0, 0x9fc00520	/* YAMON exit */
32	lw	v0, (v0)
33	li	a0, 1
34	jal	v0
35
361 :	b	1b
37
38	__INITDATA
39nonmt_processor :
40	.asciz	"SMTC kernel requires the MT ASE to run\n"
41	__FINIT
420 :
43#endif
44	.endm
45
46/*
47 * Do SMP slave processor setup necessary before we can safely execute C code.
48 */
49	.macro	smp_slave_setup
50	.endm
51
52#endif /* __ASM_MACH_MIPS_KERNEL_ENTRY_INIT_H */
53