ioasic_ints.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:4k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  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.  * Definitions for the interrupt related bits in the JUNKIO Asic
  7.  * interrupt status register (and the interrupt mask register, of course)
  8.  *
  9.  * Created with Information from:
  10.  *
  11.  * "DEC 3000 300/400/500/600/700/800/900 AXP Models System Programmer's Manual"
  12.  *
  13.  * and the Mach Sources
  14.  */
  15. /* 
  16.  * the upper 16 bits are common to all JUNKIO machines
  17.  * (except the FLOPPY and ISDN bits, which are Maxine sepcific)
  18.  */
  19. #define SCC0_TRANS_PAGEEND 0x80000000 /* Serial DMA Errors */
  20. #define SCC0_TRANS_MEMRDERR 0x40000000 /* see below */
  21. #define SCC0_RECV_HALFPAGE 0x20000000
  22. #define SCC0_RECV_PAGOVRRUN 0x10000000
  23. #define SCC1_TRANS_PAGEEND 0x08000000 /* end of page reached */
  24. #define SCC1_TRANS_MEMRDERR 0x04000000 /* SCC1 DMA memory err */
  25. #define SCC1_RECV_HALFPAGE 0x02000000 /* SCC1 half page */
  26. #define SCC1_RECV_PAGOVRRUN 0x01000000 /* SCC1 receive overrun */
  27. #define FLOPPY_DMA_ERROR 0x00800000 /* FDI DMA error */
  28. #define ISDN_TRANS_PTR_LOADED 0x00400000 /* xmitbuf ptr loaded */
  29. #define ISDN_RECV_PTR_LOADED 0x00200000 /* rcvbuf ptr loaded */
  30. #define ISDN_DMA_MEMRDERR 0x00100000 /* read or ovrrun error */
  31. #define SCSI_PTR_LOADED 0x00080000
  32. #define SCSI_PAGOVRRUN 0x00040000 /* page overrun? */
  33. #define SCSI_DMA_MEMRDERR 0x00020000
  34. #define LANCE_DMA_MEMRDERR 0x00010000
  35. /*
  36.  * the lower 16 bits are system specific
  37.  */
  38. /*
  39.  * The following three seem to be in common
  40.  */
  41. #define SCSI_CHIP 0x00000200
  42. #define LANCE_CHIP 0x00000100
  43. #define SCC1_CHIP 0x00000080 /* NOT on maxine */
  44. #define SCC0_CHIP 0x00000040
  45. /*
  46.  * The rest is different
  47.  */
  48. /* kmin aka 3min aka kn02ba aka DS5000_1xx */
  49. #define KMIN_TIMEOUT 0x00001000 /* CPU IO-Write Timeout */
  50. #define KMIN_CLOCK 0x00000020
  51. #define KMIN_SCSI_FIFO 0x00000004 /* SCSI Data Ready */
  52. /* kn02ca aka maxine */
  53. #define MAXINE_FLOPPY 0x00008000 /* FDI Interrupt        */
  54. #define MAXINE_TC0 0x00001000 /* TC Option 0       */
  55. #define MAXINE_ISDN 0x00000800 /* ISDN Chip */
  56. #define MAXINE_FLOPPY_HDS 0x00000080 /* Floppy Status       */
  57. #define MAXINE_TC1 0x00000020 /* TC Option 1 */
  58. #define MAXINE_FLOPPY_XDS 0x00000010 /* Floppy Status       */
  59. #define MAXINE_VINT 0x00000008 /* Video Frame */
  60. #define MAXINE_N_VINT 0x00000004 /* Not Video frame */
  61. #define MAXINE_DTOP_TRANS 0x00000002 /* DTI Xmit-Rdy */
  62. #define MAXINE_DTOP_RECV 0x00000001 /* DTI Recv-Available */
  63. /* kn03 aka 3max+ aka DS5000_2x0 */
  64. #define KN03_TC2 0x00002000
  65. #define KN03_TC1 0x00001000
  66. #define KN03_TC0 0x00000800
  67. #define KN03_SCSI_FIFO 0x00000004 /* ??? Info from Mach */
  68. /*
  69.  * Now form groups, i.e. all serial interrupts, all SCSI interrupts and so on. 
  70.  */
  71. #define SERIAL_INTS (SCC0_TRANS_PAGEEND | SCC0_TRANS_MEMRDERR | 
  72. SCC0_RECV_HALFPAGE | SCC0_RECV_PAGOVRRUN | 
  73. SCC1_TRANS_PAGEEND | SCC1_TRANS_MEMRDERR | 
  74. SCC1_RECV_HALFPAGE | SCC1_RECV_PAGOVRRUN | 
  75. SCC1_CHIP | SCC0_CHIP)
  76. #define XINE_SERIAL_INTS (SCC0_TRANS_PAGEEND | SCC0_TRANS_MEMRDERR | 
  77. SCC0_RECV_HALFPAGE | SCC0_RECV_PAGOVRRUN | 
  78. SCC0_CHIP)
  79. #define SCSI_DMA_INTS (/* SCSI_PTR_LOADED | */ SCSI_PAGOVRRUN | 
  80. SCSI_DMA_MEMRDERR)
  81. #define KMIN_SCSI_INTS (SCSI_PTR_LOADED | SCSI_PAGOVRRUN | 
  82. SCSI_DMA_MEMRDERR | SCSI_CHIP | KMIN_SCSI_FIFO)
  83. #define LANCE_INTS (LANCE_DMA_MEMRDERR | LANCE_CHIP)
  84. /*
  85.  * For future use ...
  86.  */
  87. #define XINE_FLOPPY_INTS (MAXINE_FLOPPY | MAXINE_FLOPPY_HDS | 
  88. FLOPPY_DMA_ERROR | MAXINE_FLOPPY_XDS)
  89. #define XINE_ISDN_INTS (MAXINE_ISDN | ISDN_TRANS_PTR_LOADED | 
  90. ISDN_RECV_PTR_LOADED | ISDN_DMA_MEMRDERR)
  91. #define XINE_DTOP_INTS (MAXINE_DTOP_TRANS | DTOP_RECV | 
  92. ISDN_TRANS_PTR_LOADED | ISDN_RECV_PTR_LOADED | 
  93. ISDN_DMA_MEMRDERR)