hypertransport.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #ifndef _ASM_X86_HYPERTRANSPORT_H
  2. #define _ASM_X86_HYPERTRANSPORT_H
  3. /*
  4. * Constants for x86 Hypertransport Interrupts.
  5. */
  6. #define HT_IRQ_LOW_BASE 0xf8000000
  7. #define HT_IRQ_LOW_VECTOR_SHIFT 16
  8. #define HT_IRQ_LOW_VECTOR_MASK 0x00ff0000
  9. #define HT_IRQ_LOW_VECTOR(v) \
  10. (((v) << HT_IRQ_LOW_VECTOR_SHIFT) & HT_IRQ_LOW_VECTOR_MASK)
  11. #define HT_IRQ_LOW_DEST_ID_SHIFT 8
  12. #define HT_IRQ_LOW_DEST_ID_MASK 0x0000ff00
  13. #define HT_IRQ_LOW_DEST_ID(v) \
  14. (((v) << HT_IRQ_LOW_DEST_ID_SHIFT) & HT_IRQ_LOW_DEST_ID_MASK)
  15. #define HT_IRQ_LOW_DM_PHYSICAL 0x0000000
  16. #define HT_IRQ_LOW_DM_LOGICAL 0x0000040
  17. #define HT_IRQ_LOW_RQEOI_EDGE 0x0000000
  18. #define HT_IRQ_LOW_RQEOI_LEVEL 0x0000020
  19. #define HT_IRQ_LOW_MT_FIXED 0x0000000
  20. #define HT_IRQ_LOW_MT_ARBITRATED 0x0000004
  21. #define HT_IRQ_LOW_MT_SMI 0x0000008
  22. #define HT_IRQ_LOW_MT_NMI 0x000000c
  23. #define HT_IRQ_LOW_MT_INIT 0x0000010
  24. #define HT_IRQ_LOW_MT_STARTUP 0x0000014
  25. #define HT_IRQ_LOW_MT_EXTINT 0x0000018
  26. #define HT_IRQ_LOW_MT_LINT1 0x000008c
  27. #define HT_IRQ_LOW_MT_LINT0 0x0000098
  28. #define HT_IRQ_LOW_IRQ_MASKED 0x0000001
  29. #define HT_IRQ_HIGH_DEST_ID_SHIFT 0
  30. #define HT_IRQ_HIGH_DEST_ID_MASK 0x00ffffff
  31. #define HT_IRQ_HIGH_DEST_ID(v) \
  32. ((((v) >> 8) << HT_IRQ_HIGH_DEST_ID_SHIFT) & HT_IRQ_HIGH_DEST_ID_MASK)
  33. #endif /* _ASM_X86_HYPERTRANSPORT_H */