Logo Search packages:      
Sourcecode: linux version File versions

kernel-entry-init.h

/*
 * This file is subject to the terms and conditions of the GNU General Public
 * License.  See the file "COPYING" in the main directory of this archive
 * for more details.
 *
 * Chris Dearman (chris@mips.com)
 * Copyright (C) 2007 Mips Technologies, Inc.
 */
#ifndef __ASM_MACH_MIPS_KERNEL_ENTRY_INIT_H
#define __ASM_MACH_MIPS_KERNEL_ENTRY_INIT_H

      .macro      kernel_entry_setup
#ifdef CONFIG_MIPS_MT_SMTC
      mfc0  t0, CP0_CONFIG
      bgez  t0, 9f
      mfc0  t0, CP0_CONFIG, 1
      bgez  t0, 9f
      mfc0  t0, CP0_CONFIG, 2
      bgez  t0, 9f
      mfc0  t0, CP0_CONFIG, 3
      and   t0, 1<<2
      bnez  t0, 0f
9:
      /* Assume we came from YAMON... */
      PTR_LA      v0, 0x9fc00534    /* YAMON print */
      lw    v0, (v0)
      move  a0, zero
      PTR_LA      a1, nonmt_processor
      jal   v0

      PTR_LA      v0, 0x9fc00520    /* YAMON exit */
      lw    v0, (v0)
      li    a0, 1
      jal   v0

1:    b     1b

      __INITDATA
nonmt_processor:
      .asciz      "SMTC kernel requires the MT ASE to run\n"
      __FINIT
0:
#endif
      .endm

/*
 * Do SMP slave processor setup necessary before we can safely execute C code.
 */
      .macro      smp_slave_setup
      .endm

#endif /* __ASM_MACH_MIPS_KERNEL_ENTRY_INIT_H */

Generated by  Doxygen 1.6.0   Back to index