Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/arch/mips/sgi-ip32/ip32-berr.c
10817 views
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) 1994, 1995, 1996, 1999, 2000 by Ralf Baechle
7
* Copyright (C) 1999, 2000 by Silicon Graphics
8
* Copyright (C) 2002 Maciej W. Rozycki
9
*/
10
#include <linux/init.h>
11
#include <linux/kernel.h>
12
#include <linux/sched.h>
13
#include <asm/traps.h>
14
#include <asm/uaccess.h>
15
#include <asm/addrspace.h>
16
#include <asm/ptrace.h>
17
#include <asm/tlbdebug.h>
18
19
static int ip32_be_handler(struct pt_regs *regs, int is_fixup)
20
{
21
int data = regs->cp0_cause & 4;
22
23
if (is_fixup)
24
return MIPS_BE_FIXUP;
25
26
printk("Got %cbe at 0x%lx\n", data ? 'd' : 'i', regs->cp0_epc);
27
show_regs(regs);
28
dump_tlb_all();
29
while(1);
30
force_sig(SIGBUS, current);
31
}
32
33
void __init ip32_be_init(void)
34
{
35
board_be_handler = ip32_be_handler;
36
}
37
38