GUI: Fix Tomato RAF theme for all builds. Compilation typo.
[tomato.git] / release / src-rt-6.x.4708 / linux / linux-2.6.36 / arch / mips / include / asm / mach-ip27 / kernel-entry-init.h
blob7fd327e05f8ee6e8346dd9c3d188799060325152
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.
6 * Copyright (C) 2000 Silicon Graphics, Inc.
7 * Copyright (C) 2005 Ralf Baechle <ralf@linux-mips.org>
8 */
9 #ifndef __ASM_MACH_IP27_KERNEL_ENTRY_H
10 #define __ASM_MACH_IP27_KERNEL_ENTRY_H
12 #include <asm/sn/addrs.h>
13 #include <asm/sn/sn0/hubni.h>
14 #include <asm/sn/klkernvars.h>
17 * Returns the local nasid into res.
19 .macro GET_NASID_ASM res
20 dli \res, LOCAL_HUB_ADDR(NI_STATUS_REV_ID)
21 ld \res, (\res)
22 and \res, NSRI_NODEID_MASK
23 dsrl \res, NSRI_NODEID_SHFT
24 .endm
26 .macro kernel_entry_setup
27 GET_NASID_ASM t1
28 move t2, t1 # text and data are here
29 MAPPED_KERNEL_SETUP_TLB
30 .endm
33 * Do SMP slave processor setup necessary before we can savely execute C code.
35 .macro smp_slave_setup
36 GET_NASID_ASM t1
37 dli t0, KLDIR_OFFSET + (KLI_KERN_VARS * KLDIR_ENT_SIZE) + \
38 KLDIR_OFF_POINTER + CAC_BASE
39 dsll t1, NASID_SHFT
40 or t0, t0, t1
41 ld t0, 0(t0) # t0 points to kern_vars struct
42 lh t1, KV_RO_NASID_OFFSET(t0)
43 lh t2, KV_RW_NASID_OFFSET(t0)
44 MAPPED_KERNEL_SETUP_TLB
47 * We might not get launched at the address the kernel is linked to,
48 * so we jump there.
50 PTR_LA t0, 0f
51 jr t0
53 .endm
55 #endif /* __ASM_MACH_IP27_KERNEL_ENTRY_H */