linux/arch/mips/mm/tlbex-fault.S
<<
>>
Prefs
   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) 1999 Ralf Baechle
   7 * Copyright (C) 1999 Silicon Graphics, Inc.
   8 */
   9#include <asm/mipsregs.h>
  10#include <asm/regdef.h>
  11#include <asm/stackframe.h>
  12
  13        .macro tlb_do_page_fault, write
  14        NESTED(tlb_do_page_fault_\write, PT_SIZE, sp)
  15        .cfi_signal_frame
  16        SAVE_ALL docfi=1
  17        MFC0    a2, CP0_BADVADDR
  18        KMODE
  19        move    a0, sp
  20        REG_S   a2, PT_BVADDR(sp)
  21        li      a1, \write
  22        jal     do_page_fault
  23        j       ret_from_exception
  24        END(tlb_do_page_fault_\write)
  25        .endm
  26
  27        tlb_do_page_fault 0
  28        tlb_do_page_fault 1
  29