interrupt.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  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. * KVM/MIPS: Interrupts
  7. * Copyright (C) 2012 MIPS Technologies, Inc. All rights reserved.
  8. * Authors: Sanjay Lal <[email protected]>
  9. */
  10. /*
  11. * MIPS Exception Priorities, exceptions (including interrupts) are queued up
  12. * for the guest in the order specified by their priorities
  13. */
  14. #define MIPS_EXC_RESET 0
  15. #define MIPS_EXC_SRESET 1
  16. #define MIPS_EXC_DEBUG_ST 2
  17. #define MIPS_EXC_DEBUG 3
  18. #define MIPS_EXC_DDB 4
  19. #define MIPS_EXC_NMI 5
  20. #define MIPS_EXC_MCHK 6
  21. #define MIPS_EXC_INT_TIMER 7
  22. #define MIPS_EXC_INT_IO_1 8
  23. #define MIPS_EXC_INT_IO_2 9
  24. #define MIPS_EXC_EXECUTE 10
  25. #define MIPS_EXC_INT_IPI_1 11
  26. #define MIPS_EXC_INT_IPI_2 12
  27. #define MIPS_EXC_MAX 13
  28. /* XXXSL More to follow */
  29. #define C_TI (_ULCAST_(1) << 30)
  30. extern u32 *kvm_priority_to_irq;
  31. u32 kvm_irq_to_priority(u32 irq);
  32. int kvm_mips_pending_timer(struct kvm_vcpu *vcpu);
  33. void kvm_mips_deliver_interrupts(struct kvm_vcpu *vcpu, u32 cause);