/arch/mips/bcm47xx/ |
D | irq.c | 33 u32 cause; in plat_irq_dispatch() local 35 cause = read_c0_cause() & read_c0_status() & CAUSEF_IP; in plat_irq_dispatch() 37 clear_c0_status(cause); in plat_irq_dispatch() 39 if (cause & CAUSEF_IP7) in plat_irq_dispatch() 41 if (cause & CAUSEF_IP2) in plat_irq_dispatch() 43 if (cause & CAUSEF_IP3) in plat_irq_dispatch() 45 if (cause & CAUSEF_IP4) in plat_irq_dispatch() 47 if (cause & CAUSEF_IP5) in plat_irq_dispatch() 49 if (cause & CAUSEF_IP6) in plat_irq_dispatch()
|
/arch/arc/kernel/ |
D | traps.c | 45 static noinline int handle_exception(unsigned long cause, char *str, in handle_exception() argument 52 tsk->thread.cause_code = cause; in handle_exception() 61 die(str, regs, (unsigned long)info->si_addr, cause); in handle_exception() 68 int name(unsigned long cause, unsigned long address, struct pt_regs *regs) \ 76 return handle_exception(cause, str, regs, &info);\ 93 int do_misaligned_access(unsigned long cause, unsigned long address, in do_misaligned_access() argument 96 if (misaligned_fixup(address, regs, cause, cregs) != 0) in do_misaligned_access() 97 return do_misaligned_error(cause, address, regs); in do_misaligned_access() 107 void do_machine_check_fault(unsigned long cause, unsigned long address, in do_machine_check_fault() argument 110 die("Machine Check Exception", regs, address, cause); in do_machine_check_fault() [all …]
|
/arch/mips/kernel/ |
D | irq-gt641xx.c | 35 u32 cause; in ack_gt641xx_irq() local 38 cause = GT_READ(GT_INTRCAUSE_OFS); in ack_gt641xx_irq() 39 cause &= ~GT641XX_IRQ_TO_BIT(d->irq); in ack_gt641xx_irq() 40 GT_WRITE(GT_INTRCAUSE_OFS, cause); in ack_gt641xx_irq() 59 u32 cause, mask; in mask_ack_gt641xx_irq() local 66 cause = GT_READ(GT_INTRCAUSE_OFS); in mask_ack_gt641xx_irq() 67 cause &= ~GT641XX_IRQ_TO_BIT(d->irq); in mask_ack_gt641xx_irq() 68 GT_WRITE(GT_INTRCAUSE_OFS, cause); in mask_ack_gt641xx_irq() 94 u32 cause, mask; in gt641xx_irq_dispatch() local 97 cause = GT_READ(GT_INTRCAUSE_OFS); in gt641xx_irq_dispatch() [all …]
|
/arch/cris/arch-v10/mm/ |
D | fault.c | 41 int cause; in handle_mmu_bus_fault() local 55 cause = *R_MMU_CAUSE; in handle_mmu_bus_fault() 57 address = cause & PAGE_MASK; /* get faulting address */ in handle_mmu_bus_fault() 61 page_id = IO_EXTRACT(R_MMU_CAUSE, page_id, cause); in handle_mmu_bus_fault() 62 acc = IO_EXTRACT(R_MMU_CAUSE, acc_excp, cause); in handle_mmu_bus_fault() 63 inv = IO_EXTRACT(R_MMU_CAUSE, inv_excp, cause); in handle_mmu_bus_fault() 66 miss = IO_EXTRACT(R_MMU_CAUSE, miss_excp, cause); in handle_mmu_bus_fault() 67 we = IO_EXTRACT(R_MMU_CAUSE, we_excp, cause); in handle_mmu_bus_fault() 68 writeac = IO_EXTRACT(R_MMU_CAUSE, wr_rd, cause); in handle_mmu_bus_fault() 91 *R_TLB_HI = cause; in handle_mmu_bus_fault()
|
/arch/mips/kvm/ |
D | kvm_trap_emul.c | 47 unsigned long cause = vcpu->arch.host_cp0_cause; in kvm_trap_emul_handle_cop_unusable() local 51 if (((cause & CAUSEF_CE) >> CAUSEB_CE) == 1) { in kvm_trap_emul_handle_cop_unusable() 52 er = kvm_mips_emulate_fpu_exc(cause, opc, run, vcpu); in kvm_trap_emul_handle_cop_unusable() 54 er = kvm_mips_emulate_inst(cause, opc, run, vcpu); in kvm_trap_emul_handle_cop_unusable() 82 unsigned long cause = vcpu->arch.host_cp0_cause; in kvm_trap_emul_handle_tlb_mod() local 91 cause, opc, badvaddr); in kvm_trap_emul_handle_tlb_mod() 93 er = kvm_mips_handle_tlbmod(cause, opc, run, vcpu); in kvm_trap_emul_handle_tlb_mod() 107 cause, opc, badvaddr); in kvm_trap_emul_handle_tlb_mod() 115 cause, opc, badvaddr); in kvm_trap_emul_handle_tlb_mod() 129 unsigned long cause = vcpu->arch.host_cp0_cause; in kvm_trap_emul_handle_tlb_st_miss() local [all …]
|
D | kvm_mips_emul.c | 210 enum emulation_result update_pc(struct kvm_vcpu *vcpu, uint32_t cause) in update_pc() argument 215 if (cause & CAUSEF_BD) { in update_pc() 414 kvm_mips_emulate_CP0(uint32_t inst, uint32_t *opc, uint32_t cause, in kvm_mips_emulate_CP0() argument 428 er = update_pc(vcpu, cause); in kvm_mips_emulate_CP0() 657 kvm_mips_emulate_store(uint32_t inst, uint32_t cause, in kvm_mips_emulate_store() argument 671 er = update_pc(vcpu, cause); in kvm_mips_emulate_store() 772 kvm_mips_emulate_load(uint32_t inst, uint32_t cause, in kvm_mips_emulate_load() argument 784 vcpu->arch.pending_load_cause = cause; in kvm_mips_emulate_load() 915 kvm_mips_emulate_cache(uint32_t inst, uint32_t *opc, uint32_t cause, in kvm_mips_emulate_cache() argument 932 er = update_pc(vcpu, cause); in kvm_mips_emulate_cache() [all …]
|
D | kvm_mips_int.h | 46 uint32_t cause); 48 uint32_t cause); 49 void kvm_mips_deliver_interrupts(struct kvm_vcpu *vcpu, uint32_t cause);
|
D | kvm_mips_int.c | 116 uint32_t cause) in kvm_mips_irq_deliver_cb() argument 173 if (cause & CAUSEF_BD) in kvm_mips_irq_deliver_cb() 200 uint32_t cause) in kvm_mips_irq_clear_cb() argument 205 void kvm_mips_deliver_interrupts(struct kvm_vcpu *vcpu, uint32_t cause) in kvm_mips_deliver_interrupts() argument 216 if (kvm_mips_callbacks->irq_clear(vcpu, priority, cause)) { in kvm_mips_deliver_interrupts() 228 if (kvm_mips_callbacks->irq_deliver(vcpu, priority, cause)) { in kvm_mips_deliver_interrupts()
|
/arch/powerpc/sysdev/ |
D | mv64x60_pic.c | 272 u32 cause; in mv64x60_get_irq() local 277 cause = in_le32(mv64x60_irq_reg_base + MV64X60_IC_CPU0_SELECT_CAUSE); in mv64x60_get_irq() 278 if (cause & MV64X60_SELECT_CAUSE_HIGH) { in mv64x60_get_irq() 279 cause &= mv64x60_cached_high_mask; in mv64x60_get_irq() 281 if (cause & MV64X60_HIGH_GPP_GROUPS) { in mv64x60_get_irq() 282 cause = in_le32(mv64x60_gpp_reg_base + in mv64x60_get_irq() 284 cause &= mv64x60_cached_gpp_mask; in mv64x60_get_irq() 288 cause &= mv64x60_cached_low_mask; in mv64x60_get_irq() 291 if (cause) { in mv64x60_get_irq() 292 hwirq = (level1 << MV64x60_LEVEL1_OFFSET) | __ilog2(cause); in mv64x60_get_irq()
|
D | mv64x60_udbg.c | 50 int cause = 0; in mv64x60_udbg_getc() local 58 out_le32(mpsc_intr_cause, cause & ~MPSC_INTR_CAUSE_RCC); in mv64x60_udbg_getc()
|
/arch/arc/include/asm/ |
D | kprobes.h | 51 int kprobe_fault_handler(struct pt_regs *regs, unsigned long cause); 53 void trap_is_kprobe(unsigned long cause, unsigned long address, 56 static void trap_is_kprobe(unsigned long cause, unsigned long address, in trap_is_kprobe() argument
|
D | unaligned.h | 19 unsigned long cause, struct callee_regs *cregs); 23 unsigned long cause, struct callee_regs *cregs) in misaligned_fixup() argument
|
/arch/mips/include/asm/ |
D | kvm_host.h | 496 uint32_t cause); 498 uint32_t cause); 527 extern enum emulation_result kvm_mips_handle_tlbmiss(unsigned long cause, 532 extern enum emulation_result kvm_mips_handle_tlbmod(unsigned long cause, 561 enum emulation_result update_pc(struct kvm_vcpu *vcpu, uint32_t cause); 563 extern enum emulation_result kvm_mips_emulate_inst(unsigned long cause, 568 extern enum emulation_result kvm_mips_emulate_syscall(unsigned long cause, 573 extern enum emulation_result kvm_mips_emulate_tlbmiss_ld(unsigned long cause, 578 extern enum emulation_result kvm_mips_emulate_tlbinv_ld(unsigned long cause, 583 extern enum emulation_result kvm_mips_emulate_tlbmiss_st(unsigned long cause, [all …]
|
/arch/arm/mach-dove/ |
D | irq.c | 74 unsigned long cause = readl(PMU_INTERRUPT_CAUSE); in pmu_irq_handler() local 76 cause &= readl(PMU_INTERRUPT_MASK); in pmu_irq_handler() 77 if (cause == 0) { in pmu_irq_handler() 83 if (!(cause & (1 << irq))) in pmu_irq_handler()
|
/arch/alpha/mm/ |
D | fault.c | 85 long cause, struct pt_regs *regs) in do_page_fault() argument 93 (cause > 0 ? FAULT_FLAG_WRITE : 0)); in do_page_fault() 98 if (cause == 0) { in do_page_fault() 135 if (cause < 0) { in do_page_fault() 138 } else if (!cause) { in do_page_fault() 205 die_if_kernel("Oops", regs, cause, (unsigned long*)regs - 16); in do_page_fault()
|
/arch/powerpc/include/asm/ |
D | tm.h | 17 unsigned long orig_msr, uint8_t cause); 20 extern void tm_abort(uint8_t cause);
|
/arch/xtensa/kernel/ |
D | traps.c | 84 int cause; member 323 void * __init trap_set_handler(int cause, void *handler) in trap_set_handler() argument 325 unsigned long *entry = &exc_table[EXC_TABLE_DEFAULT / 4 + cause]; in trap_set_handler() 361 for(i = 0; dispatch_init_table[i].cause >= 0; i++) { in trap_init() 364 int cause = dispatch_init_table[i].cause; in trap_init() local 368 set_handler (EXC_TABLE_DEFAULT/4 + cause, handler); in trap_init() 370 set_handler (EXC_TABLE_FAST_USER/4 + cause, handler); in trap_init() 372 set_handler (EXC_TABLE_FAST_KERNEL/4 + cause, handler); in trap_init()
|
/arch/arm/mach-orion5x/include/mach/ |
D | entry-macro.S | 18 ldr \irqstat, [\base, #0] @ main cause 21 @ find cause bits that are unmasked
|
/arch/powerpc/boot/ |
D | mpsc.c | 74 u32 cause = 0; in mpsc_getc() local 77 while (!(cause & MPSC_INTR_CAUSE_RCC)) in mpsc_getc() 78 cause = in_le32((u32 *)(mpscintr_base + MPSC_INTR_CAUSE)); in mpsc_getc() 83 cause & ~MPSC_INTR_CAUSE_RCC); in mpsc_getc()
|
/arch/mips/bcm63xx/ |
D | irq.c | 287 u32 cause; in plat_irq_dispatch() local 290 cause = read_c0_cause() & read_c0_status() & ST0_IM; in plat_irq_dispatch() 292 if (!cause) in plat_irq_dispatch() 295 if (cause & CAUSEF_IP7) in plat_irq_dispatch() 297 if (cause & CAUSEF_IP2) in plat_irq_dispatch() 300 if (cause & CAUSEF_IP3) in plat_irq_dispatch() 302 if (cause & CAUSEF_IP4) in plat_irq_dispatch() 304 if (cause & CAUSEF_IP5) in plat_irq_dispatch() 306 if (cause & CAUSEF_IP6) in plat_irq_dispatch()
|
/arch/hexagon/mm/ |
D | vm_fault.c | 48 void do_page_fault(unsigned long address, long cause, struct pt_regs *regs) in do_page_fault() argument 57 (cause > 0 ? FAULT_FLAG_WRITE : 0); in do_page_fault() 87 switch (cause) { in do_page_fault()
|
/arch/powerpc/sysdev/ge/ |
D | ge_pic.c | 230 u32 cause, mask, active; in gef_pic_get_irq() local 234 cause = in_be32(gef_pic_irq_reg_base + GEF_PIC_INTR_STATUS); in gef_pic_get_irq() 238 active = cause & mask; in gef_pic_get_irq()
|
/arch/mips/sni/ |
D | a20r.c | 205 u32 cause, status; in a20r_hwint() local 210 cause = read_c0_cause(); in a20r_hwint() 212 irq = ffs(((cause & status) >> 8) & 0xf8); in a20r_hwint()
|
/arch/xtensa/include/asm/ |
D | traps.h | 20 extern void * __init trap_set_handler(int cause, void *handler);
|
/arch/mips/lasat/ |
D | interrupt.c | 87 unsigned int cause = read_c0_cause(); in plat_irq_dispatch() local 90 if (cause & CAUSEF_IP7) { /* R4000 count / compare IRQ */ in plat_irq_dispatch()
|