Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / arch / powerpc / platforms / 4xx / machine_check.c
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3  */
4
5 #include <linux/kernel.h>
6 #include <linux/printk.h>
7 #include <linux/ptrace.h>
8
9 #include <asm/reg.h>
10
11 int machine_check_4xx(struct pt_regs *regs)
12 {
13         unsigned long reason = regs->dsisr;
14
15         if (reason & ESR_IMCP) {
16                 printk("Instruction");
17                 mtspr(SPRN_ESR, reason & ~ESR_IMCP);
18         } else
19                 printk("Data");
20         printk(" machine check in kernel mode.\n");
21
22         return 0;
23 }