Linux Audio

Check our new training course

Loading...
Note: File does not exist in v3.1.
 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 * Copyright (C) 2005 Embedded Alley Solutions, Inc
 7 * Copyright (C) 2005 Ralf Baechle (ralf@linux-mips.org)
 8 * Copyright (C) 2009 Jiajie Chen (chenjiajie@cse.buaa.edu.cn)
 9 * Copyright (C) 2012 Huacai Chen (chenhc@lemote.com)
10 */
11#ifndef __ASM_MACH_LOONGSON64_KERNEL_ENTRY_H
12#define __ASM_MACH_LOONGSON64_KERNEL_ENTRY_H
13
14/*
15 * Override macros used in arch/mips/kernel/head.S.
16 */
17	.macro	kernel_entry_setup
18#ifdef CONFIG_CPU_LOONGSON3
19	.set	push
20	.set	mips64
21	/* Set LPA on LOONGSON3 config3 */
22	mfc0	t0, $16, 3
23	or	t0, (0x1 << 7)
24	mtc0	t0, $16, 3
25	/* Set ELPA on LOONGSON3 pagegrain */
26	li	t0, (0x1 << 29)
27	mtc0	t0, $5, 1
28	_ehb
29	.set	pop
30#endif
31	.endm
32
33/*
34 * Do SMP slave processor setup.
35 */
36	.macro	smp_slave_setup
37#ifdef CONFIG_CPU_LOONGSON3
38	.set	push
39	.set	mips64
40	/* Set LPA on LOONGSON3 config3 */
41	mfc0	t0, $16, 3
42	or	t0, (0x1 << 7)
43	mtc0	t0, $16, 3
44	/* Set ELPA on LOONGSON3 pagegrain */
45	li	t0, (0x1 << 29)
46	mtc0	t0, $5, 1
47	_ehb
48	.set	pop
49#endif
50	.endm
51
52#endif /* __ASM_MACH_LOONGSON64_KERNEL_ENTRY_H */