Blackfin arch: remove hardware PM code, oprofile not use it
[linux-2.6.git] / arch / blackfin / mach-common / irqpanic.c
index d62c2e2..05004df 100644 (file)
@@ -33,8 +33,6 @@
 #include <asm/traps.h>
 #include <asm/blackfin.h>
 
-#include "../oprofile/op_blackfin.h"
-
 #ifdef CONFIG_DEBUG_ICACHE_CHECK
 #define L1_ICACHE_START 0xffa10000
 #define L1_ICACHE_END   0xffa13fff
@@ -46,9 +44,6 @@ void irq_panic(int reason, struct pt_regs *regs) __attribute__ ((l1_text));
  */
 asmlinkage void irq_panic(int reason, struct pt_regs *regs)
 {
-       int sig = 0;
-       siginfo_t info;
-
 #ifdef CONFIG_DEBUG_ICACHE_CHECK
        unsigned int cmd, tag, ca, cache_hi, cache_lo, *pa;
        unsigned short i, j, die;
@@ -136,59 +131,4 @@ asmlinkage void irq_panic(int reason, struct pt_regs *regs)
        }
 #endif
 
-       printk(KERN_EMERG "\n");
-       printk(KERN_EMERG "Exception: IRQ 0x%x entered\n", reason);
-       printk(KERN_EMERG " code=[0x%08lx],   stack frame=0x%08lx,  "
-           " bad PC=0x%08lx\n",
-           (unsigned long)regs->seqstat,
-           (unsigned long)regs,
-           (unsigned long)regs->pc);
-       if (reason == 0x5) {
-               printk(KERN_EMERG "----------- HARDWARE ERROR -----------\n");
-
-               /* There is only need to check for Hardware Errors, since other
-                * EXCEPTIONS are handled in TRAPS.c (MH)
-                */
-               switch (regs->seqstat & SEQSTAT_HWERRCAUSE) {
-               case (SEQSTAT_HWERRCAUSE_SYSTEM_MMR):   /* System MMR Error */
-                       info.si_code = BUS_ADRALN;
-                       sig = SIGBUS;
-                       printk(KERN_EMERG HWC_x2(KERN_EMERG));
-                       break;
-               case (SEQSTAT_HWERRCAUSE_EXTERN_ADDR):  /* External Memory Addressing Error */
-                       info.si_code = BUS_ADRERR;
-                       sig = SIGBUS;
-                       printk(KERN_EMERG HWC_x3(KERN_EMERG));
-                       break;
-               case (SEQSTAT_HWERRCAUSE_PERF_FLOW):    /* Performance Monitor Overflow */
-                       printk(KERN_EMERG HWC_x12(KERN_EMERG));
-                       break;
-               case (SEQSTAT_HWERRCAUSE_RAISE_5):      /* RAISE 5 instruction */
-                       printk(KERN_EMERG HWC_x18(KERN_EMERG));
-                       break;
-               default:        /* Reserved */
-                       printk(KERN_EMERG HWC_default(KERN_EMERG));
-                       break;
-               }
-       }
-
-       regs->ipend = bfin_read_IPEND();
-       dump_bfin_regs(regs, (void *)regs->pc);
-       if (0 == (info.si_signo = sig) || 0 == user_mode(regs)) /* in kernelspace */
-               panic("Unhandled IRQ or exceptions!\n");
-       else {                  /* in userspace */
-               info.si_errno = 0;
-               info.si_addr = (void *)regs->pc;
-               force_sig_info(sig, &info, current);
-       }
-}
-
-#ifdef CONFIG_HARDWARE_PM
-/*
- * call the handler of Performance overflow
- */
-asmlinkage void pm_overflow(int irq, struct pt_regs *regs)
-{
-       pm_overflow_handler(irq, regs);
 }
-#endif