/openbmc/linux/arch/powerpc/include/asm/ |
H A D | kvm_book3s_asm.h | 29 .macro DO_KVM intno 30 .if (\intno == BOOK3S_INTERRUPT_SYSTEM_RESET) || \ 31 (\intno == BOOK3S_INTERRUPT_MACHINE_CHECK) || \ 32 (\intno == BOOK3S_INTERRUPT_DATA_STORAGE) || \ 33 (\intno == BOOK3S_INTERRUPT_INST_STORAGE) || \ 34 (\intno == BOOK3S_INTERRUPT_DATA_SEGMENT) || \ 35 (\intno == BOOK3S_INTERRUPT_INST_SEGMENT) || \ 36 (\intno == BOOK3S_INTERRUPT_EXTERNAL) || \ 37 (\intno == BOOK3S_INTERRUPT_EXTERNAL_HV) || \ 38 (\intno == BOOK3S_INTERRUPT_ALIGNMENT) || \ [all …]
|
H A D | kvm_booke_hv_asm.h | 56 .macro DO_KVM intno srr1 61 b kvmppc_handler_\intno\()_\srr1
|
/openbmc/qemu/target/i386/tcg/ |
H A D | excp_helper.c | 28 G_NORETURN void helper_raise_interrupt(CPUX86State *env, int intno, in helper_raise_interrupt() argument 31 raise_interrupt(env, intno, next_eip_addend); in helper_raise_interrupt() 44 static int check_exception(CPUX86State *env, int intno, int *error_code, in check_exception() argument 50 int second_contributory = intno == 0 || in check_exception() 51 (intno >= 10 && intno <= 13); in check_exception() 54 env->old_exception, intno); in check_exception() 71 (second_contributory || (intno == EXCP0E_PAGE)))) { in check_exception() 72 intno = EXCP08_DBLE; in check_exception() 76 if (second_contributory || (intno == EXCP0E_PAGE) || in check_exception() 77 (intno == EXCP08_DBLE)) { in check_exception() [all …]
|
H A D | helper-tcg.h | 71 G_NORETURN void raise_interrupt(CPUX86State *nenv, int intno, int next_eip_addend); 107 void do_interrupt_x86_hardirq(CPUX86State *env, int intno, int is_hw); 108 void do_interrupt_all(X86CPU *cpu, int intno, int is_int, 110 void handle_even_inj(CPUX86State *env, int intno, int is_int, 112 int exception_has_error_code(int intno);
|
H A D | seg_helper.c | 609 static int exception_is_fault(int intno) in exception_is_fault() argument 611 switch (intno) { in exception_is_fault() 627 int exception_has_error_code(int intno) in exception_has_error_code() argument 629 switch (intno) { in exception_has_error_code() 643 static void do_interrupt_protected(CPUX86State *env, int intno, int is_int, in do_interrupt_protected() argument 659 has_error_code = exception_has_error_code(intno); in do_interrupt_protected() 666 set_rf = exception_is_fault(intno); in do_interrupt_protected() 670 if (intno * 8 + 7 > dt->limit) { in do_interrupt_protected() 671 raise_exception_err(env, EXCP0D_GPF, intno * 8 + 2); in do_interrupt_protected() 673 ptr = dt->base + intno * 8; in do_interrupt_protected() [all …]
|
/openbmc/qemu/target/sparc/ |
H A D | int64_helper.c | 134 int intno = cs->exception_index; in sparc_cpu_do_interrupt() local 142 if (intno < 0 || intno >= 0x1ff) { in sparc_cpu_do_interrupt() 144 } else if (intno >= 0x180) { in sparc_cpu_do_interrupt() 146 } else if (intno >= 0x100) { in sparc_cpu_do_interrupt() 148 } else if (intno >= 0xc0) { in sparc_cpu_do_interrupt() 150 } else if (intno >= 0x80) { in sparc_cpu_do_interrupt() 153 name = excp_names[intno]; in sparc_cpu_do_interrupt() 159 qemu_log("%6d: %s (v=%04x)\n", count, name, intno); in sparc_cpu_do_interrupt() 197 tsptr->tt = intno; in sparc_cpu_do_interrupt() 213 switch (intno) { in sparc_cpu_do_interrupt() [all …]
|
H A D | int32_helper.c | 103 int cwp, intno = cs->exception_index; in sparc_cpu_do_interrupt() local 109 if (intno < 0 || intno >= 0x100) { in sparc_cpu_do_interrupt() 111 } else if (intno >= 0x80) { in sparc_cpu_do_interrupt() 114 name = excp_name_str(intno); in sparc_cpu_do_interrupt() 117 qemu_log("%6d: %s (v=%02x)\n", count, name, intno); in sparc_cpu_do_interrupt() 133 if (intno == TT_FP_EXCP) { in sparc_cpu_do_interrupt() 164 env->tbr = (env->tbr & TBR_BASE_MASK) | (intno << 4); in sparc_cpu_do_interrupt() 171 if ((intno & ~15) == TT_EXTINT && env->qemu_irq_ack != NULL) { in sparc_cpu_do_interrupt() 172 env->qemu_irq_ack(env, intno); in sparc_cpu_do_interrupt()
|
H A D | trace-events | 21 sparc64_cpu_check_irqs_reset_irq(int intno) "Reset CPU IRQ (current interrupt 0x%x)" 22 sparc64_cpu_check_irqs_noset_irq(uint32_t tl, uint32_t tt, int intno) "Not setting CPU IRQ: TL=%d c… 24 sparc64_cpu_check_irqs_disabled(uint32_t pil, uint32_t pil_in, uint32_t softint, int intno) "Interr…
|
/openbmc/qemu/hw/i386/ |
H A D | x86-cpu.c | 72 int intno; in cpu_get_pic_interrupt() local 75 intno = apic_get_interrupt(cpu->apic_state); in cpu_get_pic_interrupt() 76 if (intno >= 0) { in cpu_get_pic_interrupt() 77 return intno; in cpu_get_pic_interrupt() 85 intno = pic_read_irq(isa_pic); in cpu_get_pic_interrupt() 86 return intno; in cpu_get_pic_interrupt()
|
/openbmc/linux/arch/powerpc/kvm/ |
H A D | book3s_rmhandlers.S | 42 .macro INTERRUPT_TRAMPOLINE intno argument 44 .global kvmppc_trampoline_\intno 45 kvmppc_trampoline_\intno: 65 b kvmppc_resume_\intno /* Get back original handler */ 73 bne ..kvmppc_handler_hasmagic_\intno 79 ..kvmppc_handler_hasmagic_\intno: 86 li r12, \intno
|
H A D | bookehv_interrupts.S | 60 .macro kvm_handler_common intno, srr0, flags 75 li r14, \intno 170 .macro kvm_handler intno type scratch, paca_ex, ex_r10, ex_r11, srr0, srr1, flags 171 _GLOBAL(kvmppc_handler_\intno\()_\srr1) 204 kvm_handler_common \intno, \srr0, \flags 280 .macro kvm_handler intno srr0, srr1, flags 281 _GLOBAL(kvmppc_handler_\intno\()_\srr1) 303 kvm_handler_common \intno, \srr0, \flags 306 .macro kvm_lvl_handler intno scratch srr0, srr1, flags 307 _GLOBAL(kvmppc_handler_\intno\()_\srr1) [all …]
|
/openbmc/qemu/target/i386/tcg/sysemu/ |
H A D | seg_helper.c | 85 void handle_even_inj(CPUX86State *env, int intno, int is_int, in handle_even_inj() argument 100 event_inj = intno | type | SVM_EVTINJ_VALID; in handle_even_inj() 101 if (!rm && exception_has_error_code(intno)) { in handle_even_inj() 169 int intno; in x86_cpu_exec_interrupt() local 206 intno = cpu_get_pic_interrupt(env); in x86_cpu_exec_interrupt() 208 "Servicing hardware INT=0x%02x\n", intno); in x86_cpu_exec_interrupt() 209 do_interrupt_x86_hardirq(env, intno, 1); in x86_cpu_exec_interrupt() 213 intno = x86_ldl_phys(cs, env->vm_vmcb in x86_cpu_exec_interrupt() 216 "Servicing virtual hardware INT=0x%02x\n", intno); in x86_cpu_exec_interrupt() 217 do_interrupt_x86_hardirq(env, intno, 1); in x86_cpu_exec_interrupt()
|
/openbmc/qemu/target/i386/tcg/user/ |
H A D | seg_helper.c | 45 static void do_interrupt_user(CPUX86State *env, int intno, int is_int, in do_interrupt_user() argument 60 ptr = dt->base + (intno << shift); in do_interrupt_user() 67 raise_exception_err(env, EXCP0D_GPF, (intno << shift) + 2); in do_interrupt_user() 74 if (is_int || intno == EXCP_SYSCALL) { in do_interrupt_user()
|
/openbmc/u-boot/drivers/bios_emulator/ |
H A D | bios.c | 58 static void X86API undefined_intr(int intno) in undefined_intr() argument 60 if (BE_rdw(intno * 4 + 2) == BIOS_SEG) { in undefined_intr() 61 DB(printf("biosEmu: undefined interrupt %xh called!\n", intno);) in undefined_intr() 63 X86EMU_prepareForInt(intno); in undefined_intr() 75 static void X86API int42(int intno) in int42() argument 113 static void X86API int10(int intno) in int10() argument 115 if (BE_rdw(intno * 4 + 2) == BIOS_SEG) in int10() 116 int42(intno); in int10() 118 X86EMU_prepareForInt(intno); in int10()
|
/openbmc/linux/arch/powerpc/kernel/ |
H A D | head_booke.h | 48 #define NORMAL_EXCEPTION_PROLOG(trapno, intno) \ 55 DO_KVM BOOKE_INTERRUPT_##intno SPRN_SRR1; \ 115 .macro SYSCALL_ENTRY trapno intno srr1 126 b kvmppc_handler_\intno\()_\srr1 193 #define EXC_LEVEL_EXCEPTION_PROLOG(exc_level, trapno, intno, exc_level_srr0, exc_level_srr1) \ 202 DO_KVM BOOKE_INTERRUPT_##intno exc_level_srr1; \ 268 #define CRITICAL_EXCEPTION_PROLOG(trapno, intno) \ 269 EXC_LEVEL_EXCEPTION_PROLOG(CRIT, trapno+2, intno, SPRN_CSRR0, SPRN_CSRR1) 300 #define EXCEPTION(n, intno, label, hdlr) \ 302 NORMAL_EXCEPTION_PROLOG(n, intno); \ [all …]
|
/openbmc/u-boot/drivers/bios_emulator/x86emu/ |
H A D | decode.c | 50 u8 intno; in x86emu_intr_handle() local 53 intno = M.x86.intno; in x86emu_intr_handle() 54 if (_X86EMU_intrTab[intno]) { in x86emu_intr_handle() 55 (*_X86EMU_intrTab[intno])(intno); in x86emu_intr_handle() 61 M.x86.R_CS = mem_access_word(intno * 4 + 2); in x86emu_intr_handle() 63 M.x86.R_IP = mem_access_word(intno * 4); in x86emu_intr_handle() 80 M.x86.intno = intrnum; in x86emu_intr_raise() 115 if (((M.x86.intr & INTR_SYNCH) && (M.x86.intno == 0 || M.x86.intno == 2)) || in X86EMU_exec()
|
/openbmc/linux/arch/xtensa/include/asm/ |
H A D | processor.h | 71 #define XTENSA_INT_LEVEL(intno) _XTENSA_INT_LEVEL(intno) argument 72 #define _XTENSA_INT_LEVEL(intno) XCHAL_INT##intno##_LEVEL argument
|
/openbmc/qemu/hw/ipack/ |
H A D | tpci200.c | 107 static void tpci200_set_irq(void *opaque, int intno, int level) in tpci200_set_irq() argument 120 if (!(dev->ctrl[ip_n] & CTRL_INT(intno))) { in tpci200_set_irq() 126 dev->status |= STATUS_INT(ip_n, intno); in tpci200_set_irq() 128 dev->status &= ~STATUS_INT(ip_n, intno); in tpci200_set_irq() 136 DPRINTF("IP %u INT%u#: %u\n", ip_n, intno, level); in tpci200_set_irq() 139 if (dev->ctrl[ip_n] & CTRL_INT_EDGE(intno)) { in tpci200_set_irq() 343 unsigned intno = offset / 2; in tpci200_read_las1() local 344 bool int_set = s->status & STATUS_INT(ip_n, intno); in tpci200_read_las1() 345 bool int_edge_sensitive = s->ctrl[ip_n] & CTRL_INT_EDGE(intno); in tpci200_read_las1() 347 qemu_irq_lower(ip->irq[intno]); in tpci200_read_las1()
|
/openbmc/linux/arch/x86/kernel/ |
H A D | vm86_32.c | 623 int intno = popb(csp, ip, simulate_sigsegv); in handle_vm86_fault() local 626 if ((1 << (intno & 7)) & vmpi->vm86dbg_intxxtab[intno >> 3]) { in handle_vm86_fault() 627 save_v86_state(regs, VM86_INTx + (intno << 8)); in handle_vm86_fault() 631 do_int(regs, intno, ssp, sp); in handle_vm86_fault() 733 static irqreturn_t irq_handler(int intno, void *dev_id) in irq_handler() argument 739 irq_bit = 1 << intno; in irq_handler() 740 if ((irqbits & irq_bit) || !vm86_irqs[intno].tsk) in irq_handler() 743 if (vm86_irqs[intno].sig) in irq_handler() 744 send_sig(vm86_irqs[intno].sig, vm86_irqs[intno].tsk, 1); in irq_handler() 749 disable_irq_nosync(intno); in irq_handler()
|
/openbmc/u-boot/drivers/bios_emulator/include/ |
H A D | biosemu.h | 297 int (PMAPIP BE_int86) (int intno, RMREGS * in, RMREGS * out); 298 int (PMAPIP BE_int86x) (int intno, RMREGS * in, RMREGS * out, 335 int X86API BE_int86(int intno, RMREGS * in, RMREGS * out); 336 int X86API BE_int86x(int intno, RMREGS * in, RMREGS * out,
|
/openbmc/qemu/hw/intc/ |
H A D | i8259.c | 178 int irq, intno; in pic_read_irq() local 192 intno = slave_pic->irq_base + irq2; in pic_read_irq() 196 intno = s->irq_base + irq; in pic_read_irq() 202 intno = s->irq_base + irq; in pic_read_irq() 212 trace_pic_interrupt(irq, intno); in pic_read_irq() 213 return intno; in pic_read_irq()
|
H A D | grlib_irqmp.c | 120 void grlib_irqmp_ack(DeviceState *dev, unsigned int cpu, int intno) in grlib_irqmp_ack() argument 129 intno &= 15; in grlib_irqmp_ack() 130 mask = 1 << intno; in grlib_irqmp_ack() 132 trace_grlib_irqmp_ack(intno); in grlib_irqmp_ack()
|
/openbmc/qemu/linux-user/ |
H A D | vm86.c | 145 static void do_int(CPUX86State *env, int intno) in do_int() argument 154 if (is_revectored(intno, &ts->vm86plus.int_revectored)) in do_int() 156 if (intno == 0x21 && is_revectored((env->regs[R_EAX] >> 8) & 0xff, in do_int() 159 int_addr = (intno << 2); in do_int() 164 intno, segoffs >> 16, segoffs & 0xffff); in do_int() 180 LOG_VM86("VM86: return to 32 bits int 0x%x\n", intno); in do_int() 181 return_to_32bit(env, TARGET_VM86_INTx | (intno << 8)); in do_int()
|
/openbmc/u-boot/arch/x86/lib/ |
H A D | bios.c | 28 asmlinkage void (*realmode_interrupt)(u32 intno, u32 eax, u32 ebx, u32 ecx, 68 .vector = M.x86.intno, in int_exception_handler() 85 M.x86.intno, M.x86.R_EAX); in int_unknown_handler() 320 M.x86.intno = intnumber; in interrupt_handler()
|
/openbmc/qemu/hw/sparc/ |
H A D | trace-events | 18 leon3_set_irq(int intno) "Set CPU IRQ %d" 19 leon3_reset_irq(int intno) "Reset CPU IRQ %d"
|