1$NetBSD: Interrupts,v 1.1 2000/12/14 20:30:14 scw Exp $ 2 3NetBSD/mvme68k Interrupt Levels 4~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5 6NetBSD/mvme68k interrupts are dependent on the type of device which 7generates them. This holds true regardless of what bus the device is 8situated on (eg. local, VMEbus or IndustryPack site). 9 10On MVME147, there is a fixed 1:1 mapping of VMEbus interrupt level 11to CPU interrupt level. This implies that VMEbus devices must be 12set to interrupt at the correct level for that type of device. 13 14On the other boards, each VMEbus interrupt level can be mapped to a 15specific CPU interrupt level so the above restriction does not apply. 16However, note that the mapping can only be done once. Therefore it is 17not possible to have two VMEbus devices which require different CPU 18interrupt levels sharing the same VMEbus interrupt level. 19 20The mapping of device type to CPU interrupt levels is as follows: 21 22 CPU Irq Device Type 23 ~~~~~~~ ~~~~~~~~~~~ 24 <Highest> 25 6 - 7 Anything which generates an exceptional condition 26 which *must* be responded to immediately. For 27 example, a memory parity/uncorrectable data error. 28 29 5 Reserved for the system clock/scheduler. Do not use. 30 31 4 Serial port devices (rs232, rs422 etc). 32 33 3 Network interfaces. 34 35 2 Disk/Block device interfaces. 36 37 1 Anything else. 38 <Lowest> 39 40 41 42Interrupt Vectors 43~~~~~~~~~~~~~~~~~ 44 45NetBSD/mvme68k does not use or generate `auto-vectored' interrupts. 46 47All vectored interrupts up to and including vector 0x7f are reserved 48for use by onboard devices. 49 50VMEbus cards and IndustryPack modules are free to use vectors 0x80 -> 0xff. 51 52The onboard devices' vectors are as follows: 53 54MVME147: 55 0x40 PCC: ACFAIL 56 0x41 PCC: BERR 57 0x42 PCC: ABORT Switch 58 0x43 PCC: ZS Chips shared vector 59 0x44 PCC: Lance Ethernet 60 0x45 PCC: WD33C93 SCSI 61 0x46 PCC: DMA 62 0x47 PCC: Printer 63 0x48 PCC: Timer1 64 0x49 PCC: Timer2 65 0x4a PCC: Soft Interrupt 1 66 0x4b PCC: Soft Interrupt 2 67 0x4c -> 0x4f PCC: <unused> 68 69 70MVME167/177: 71 0x50 PCC2: Printer `BUSY' 72 0x51 PCC2: Printer `Paper Empty' 73 0x52 PCC2: Printer `Select' 74 0x53 PCC2: Printer `Fault' 75 0x54 PCC2: Printer `ACK' 76 0x55 PCC2: SCSI 77 0x56 PCC2: Ethernet `Error' 78 0x57 PCC2: Ethernet 79 0x58 PCC2: Timer 2 80 0x59 PCC2: Timer 1 81 0x5a PCC2: GPIO 82 0x5b PCC2: <unused> 83 0x5c PCC2: CD2401 Rx Exception 84 0x5d PCC2: CD2401 Modem 85 0x5e PCC2: CD2401 Tx 86 0x5f PCC2: CD2401 Rx 87 88 0x60 -> 0x67 VME2: <unused> 89 0x68 VME2: Software Interrupt #0 90 0x69 VME2: Software Interrupt #1 91 0x6a VME2: Software Interrupt #2 92 0x6b VME2: Software Interrupt #3 93 0x6c VME2: Software Interrupt #4 94 0x6d VME2: Software Interrupt #5 95 0x6e VME2: Software Interrupt #6 96 0x6f VME2: Software Interrupt #7 97 0x70 VME2: GCSR Location Monitor #0 98 0x71 VME2: GCSR Location Monitor #1 99 0x72 VME2: GCSR SIG #0 100 0x73 VME2: GCSR SIG #1 101 0x74 VME2: GCSR SIG #2 102 0x75 VME2: GCSR SIG #3 103 0x76 VME2: DMA Controller 104 0x77 VME2: VIA 105 0x78 VME2: Tick Timer #1 106 0x79 VME2: Tick Timer #2 107 0x7a VME2: `IRQ1' feature 108 0x7b VME2: Parity/ECC Error 109 0x7c VME2: Master Write Post Error 110 0x7d VME2: SYSFAIL 111 0x7e VME2: ABORT Switch 112 0x7f VME2: ACFAIL 113 114 115MVME162/172: 116 0x40 IPACK: DMA_a 117 0x41 IPACK: DMA_b 118 0x42 IPACK: DMA_c 119 0x43 IPACK: DMA_d 120 0x44 IPACK: Programmable Clock 121 122 0x50 -> 0x52 MC2: <unused> 123 0x53 MC2: Timer 4 124 0x54 MC2: Timer 3 125 0x55 MC2: SCSI 126 0x56 MC2: Ethernet `Error' 127 0x57 MC2: Ethernet 128 0x58 MC2: Timer 2 129 0x59 MC2: Timer 1 130 0x5a MC2: <unused> 131 0x5b MC2: Parity/ECC Error 132 0x5c MC2: ZS #1 (vector supplied by ZS chip) 133 0x5d MC2: ZS #2 (vector supplied by ZS chip) 134 0x5e MC2: Abort Switch 135 0x5f MC2: <unused> 136 137 0x60 -> 0x67 VME2: <unused> 138 0x68 VME2: Software Interrupt #0 139 0x69 VME2: Software Interrupt #1 140 0x6a VME2: Software Interrupt #2 141 0x6b VME2: Software Interrupt #3 142 0x6c VME2: Software Interrupt #4 143 0x6d VME2: Software Interrupt #5 144 0x6e VME2: Software Interrupt #6 145 0x6f VME2: Software Interrupt #7 146 0x70 VME2: GCSR Location Monitor #0 147 0x71 VME2: GCSR Location Monitor #1 148 0x72 VME2: GCSR SIG #0 149 0x73 VME2: GCSR SIG #1 150 0x74 VME2: GCSR SIG #2 151 0x75 VME2: GCSR SIG #3 152 0x76 VME2: DMA Controller 153 0x77 VME2: VIA 154 0x78 VME2: Tick Timer #1 155 0x79 VME2: Tick Timer #2 156 0x7a VME2: `IRQ1' feature 157 0x7b VME2: Parity/ECC Error 158 0x7c VME2: Master Write Post Error 159 0x7d VME2: SYSFAIL 160 0x7e VME2: <unused> 161 0x7f VME2: ACFAIL 162