0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 #ifndef _SB1250_INT_H
0021 #define _SB1250_INT_H
0022
0023 #include <asm/sibyte/sb1250_defs.h>
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035 #define K_INT_SOURCES 64
0036
0037 #define K_INT_WATCHDOG_TIMER_0 0
0038 #define K_INT_WATCHDOG_TIMER_1 1
0039 #define K_INT_TIMER_0 2
0040 #define K_INT_TIMER_1 3
0041 #define K_INT_TIMER_2 4
0042 #define K_INT_TIMER_3 5
0043 #define K_INT_SMB_0 6
0044 #define K_INT_SMB_1 7
0045 #define K_INT_UART_0 8
0046 #define K_INT_UART_1 9
0047 #define K_INT_SER_0 10
0048 #define K_INT_SER_1 11
0049 #define K_INT_PCMCIA 12
0050 #define K_INT_ADDR_TRAP 13
0051 #define K_INT_PERF_CNT 14
0052 #define K_INT_TRACE_FREEZE 15
0053 #define K_INT_BAD_ECC 16
0054 #define K_INT_COR_ECC 17
0055 #define K_INT_IO_BUS 18
0056 #define K_INT_MAC_0 19
0057 #define K_INT_MAC_1 20
0058 #define K_INT_MAC_2 21
0059 #define K_INT_DM_CH_0 22
0060 #define K_INT_DM_CH_1 23
0061 #define K_INT_DM_CH_2 24
0062 #define K_INT_DM_CH_3 25
0063 #define K_INT_MBOX_0 26
0064 #define K_INT_MBOX_1 27
0065 #define K_INT_MBOX_2 28
0066 #define K_INT_MBOX_3 29
0067 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
0068 #define K_INT_CYCLE_CP0_INT 30
0069 #define K_INT_CYCLE_CP1_INT 31
0070 #endif
0071 #define K_INT_GPIO_0 32
0072 #define K_INT_GPIO_1 33
0073 #define K_INT_GPIO_2 34
0074 #define K_INT_GPIO_3 35
0075 #define K_INT_GPIO_4 36
0076 #define K_INT_GPIO_5 37
0077 #define K_INT_GPIO_6 38
0078 #define K_INT_GPIO_7 39
0079 #define K_INT_GPIO_8 40
0080 #define K_INT_GPIO_9 41
0081 #define K_INT_GPIO_10 42
0082 #define K_INT_GPIO_11 43
0083 #define K_INT_GPIO_12 44
0084 #define K_INT_GPIO_13 45
0085 #define K_INT_GPIO_14 46
0086 #define K_INT_GPIO_15 47
0087 #define K_INT_LDT_FATAL 48
0088 #define K_INT_LDT_NONFATAL 49
0089 #define K_INT_LDT_SMI 50
0090 #define K_INT_LDT_NMI 51
0091 #define K_INT_LDT_INIT 52
0092 #define K_INT_LDT_STARTUP 53
0093 #define K_INT_LDT_EXT 54
0094 #define K_INT_PCI_ERROR 55
0095 #define K_INT_PCI_INTA 56
0096 #define K_INT_PCI_INTB 57
0097 #define K_INT_PCI_INTC 58
0098 #define K_INT_PCI_INTD 59
0099 #define K_INT_SPARE_2 60
0100 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
0101 #define K_INT_MAC_0_CH1 61
0102 #define K_INT_MAC_1_CH1 62
0103 #define K_INT_MAC_2_CH1 63
0104 #endif
0105
0106
0107
0108
0109
0110 #define M_INT_WATCHDOG_TIMER_0 _SB_MAKEMASK1(K_INT_WATCHDOG_TIMER_0)
0111 #define M_INT_WATCHDOG_TIMER_1 _SB_MAKEMASK1(K_INT_WATCHDOG_TIMER_1)
0112 #define M_INT_TIMER_0 _SB_MAKEMASK1(K_INT_TIMER_0)
0113 #define M_INT_TIMER_1 _SB_MAKEMASK1(K_INT_TIMER_1)
0114 #define M_INT_TIMER_2 _SB_MAKEMASK1(K_INT_TIMER_2)
0115 #define M_INT_TIMER_3 _SB_MAKEMASK1(K_INT_TIMER_3)
0116 #define M_INT_SMB_0 _SB_MAKEMASK1(K_INT_SMB_0)
0117 #define M_INT_SMB_1 _SB_MAKEMASK1(K_INT_SMB_1)
0118 #define M_INT_UART_0 _SB_MAKEMASK1(K_INT_UART_0)
0119 #define M_INT_UART_1 _SB_MAKEMASK1(K_INT_UART_1)
0120 #define M_INT_SER_0 _SB_MAKEMASK1(K_INT_SER_0)
0121 #define M_INT_SER_1 _SB_MAKEMASK1(K_INT_SER_1)
0122 #define M_INT_PCMCIA _SB_MAKEMASK1(K_INT_PCMCIA)
0123 #define M_INT_ADDR_TRAP _SB_MAKEMASK1(K_INT_ADDR_TRAP)
0124 #define M_INT_PERF_CNT _SB_MAKEMASK1(K_INT_PERF_CNT)
0125 #define M_INT_TRACE_FREEZE _SB_MAKEMASK1(K_INT_TRACE_FREEZE)
0126 #define M_INT_BAD_ECC _SB_MAKEMASK1(K_INT_BAD_ECC)
0127 #define M_INT_COR_ECC _SB_MAKEMASK1(K_INT_COR_ECC)
0128 #define M_INT_IO_BUS _SB_MAKEMASK1(K_INT_IO_BUS)
0129 #define M_INT_MAC_0 _SB_MAKEMASK1(K_INT_MAC_0)
0130 #define M_INT_MAC_1 _SB_MAKEMASK1(K_INT_MAC_1)
0131 #define M_INT_MAC_2 _SB_MAKEMASK1(K_INT_MAC_2)
0132 #define M_INT_DM_CH_0 _SB_MAKEMASK1(K_INT_DM_CH_0)
0133 #define M_INT_DM_CH_1 _SB_MAKEMASK1(K_INT_DM_CH_1)
0134 #define M_INT_DM_CH_2 _SB_MAKEMASK1(K_INT_DM_CH_2)
0135 #define M_INT_DM_CH_3 _SB_MAKEMASK1(K_INT_DM_CH_3)
0136 #define M_INT_MBOX_0 _SB_MAKEMASK1(K_INT_MBOX_0)
0137 #define M_INT_MBOX_1 _SB_MAKEMASK1(K_INT_MBOX_1)
0138 #define M_INT_MBOX_2 _SB_MAKEMASK1(K_INT_MBOX_2)
0139 #define M_INT_MBOX_3 _SB_MAKEMASK1(K_INT_MBOX_3)
0140 #define M_INT_MBOX_ALL _SB_MAKEMASK(4, K_INT_MBOX_0)
0141 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
0142 #define M_INT_CYCLE_CP0_INT _SB_MAKEMASK1(K_INT_CYCLE_CP0_INT)
0143 #define M_INT_CYCLE_CP1_INT _SB_MAKEMASK1(K_INT_CYCLE_CP1_INT)
0144 #endif
0145 #define M_INT_GPIO_0 _SB_MAKEMASK1(K_INT_GPIO_0)
0146 #define M_INT_GPIO_1 _SB_MAKEMASK1(K_INT_GPIO_1)
0147 #define M_INT_GPIO_2 _SB_MAKEMASK1(K_INT_GPIO_2)
0148 #define M_INT_GPIO_3 _SB_MAKEMASK1(K_INT_GPIO_3)
0149 #define M_INT_GPIO_4 _SB_MAKEMASK1(K_INT_GPIO_4)
0150 #define M_INT_GPIO_5 _SB_MAKEMASK1(K_INT_GPIO_5)
0151 #define M_INT_GPIO_6 _SB_MAKEMASK1(K_INT_GPIO_6)
0152 #define M_INT_GPIO_7 _SB_MAKEMASK1(K_INT_GPIO_7)
0153 #define M_INT_GPIO_8 _SB_MAKEMASK1(K_INT_GPIO_8)
0154 #define M_INT_GPIO_9 _SB_MAKEMASK1(K_INT_GPIO_9)
0155 #define M_INT_GPIO_10 _SB_MAKEMASK1(K_INT_GPIO_10)
0156 #define M_INT_GPIO_11 _SB_MAKEMASK1(K_INT_GPIO_11)
0157 #define M_INT_GPIO_12 _SB_MAKEMASK1(K_INT_GPIO_12)
0158 #define M_INT_GPIO_13 _SB_MAKEMASK1(K_INT_GPIO_13)
0159 #define M_INT_GPIO_14 _SB_MAKEMASK1(K_INT_GPIO_14)
0160 #define M_INT_GPIO_15 _SB_MAKEMASK1(K_INT_GPIO_15)
0161 #define M_INT_LDT_FATAL _SB_MAKEMASK1(K_INT_LDT_FATAL)
0162 #define M_INT_LDT_NONFATAL _SB_MAKEMASK1(K_INT_LDT_NONFATAL)
0163 #define M_INT_LDT_SMI _SB_MAKEMASK1(K_INT_LDT_SMI)
0164 #define M_INT_LDT_NMI _SB_MAKEMASK1(K_INT_LDT_NMI)
0165 #define M_INT_LDT_INIT _SB_MAKEMASK1(K_INT_LDT_INIT)
0166 #define M_INT_LDT_STARTUP _SB_MAKEMASK1(K_INT_LDT_STARTUP)
0167 #define M_INT_LDT_EXT _SB_MAKEMASK1(K_INT_LDT_EXT)
0168 #define M_INT_PCI_ERROR _SB_MAKEMASK1(K_INT_PCI_ERROR)
0169 #define M_INT_PCI_INTA _SB_MAKEMASK1(K_INT_PCI_INTA)
0170 #define M_INT_PCI_INTB _SB_MAKEMASK1(K_INT_PCI_INTB)
0171 #define M_INT_PCI_INTC _SB_MAKEMASK1(K_INT_PCI_INTC)
0172 #define M_INT_PCI_INTD _SB_MAKEMASK1(K_INT_PCI_INTD)
0173 #define M_INT_SPARE_2 _SB_MAKEMASK1(K_INT_SPARE_2)
0174 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
0175 #define M_INT_MAC_0_CH1 _SB_MAKEMASK1(K_INT_MAC_0_CH1)
0176 #define M_INT_MAC_1_CH1 _SB_MAKEMASK1(K_INT_MAC_1_CH1)
0177 #define M_INT_MAC_2_CH1 _SB_MAKEMASK1(K_INT_MAC_2_CH1)
0178 #endif
0179
0180
0181
0182
0183
0184 #define K_INT_MAP_I0 0
0185 #define K_INT_MAP_I1 1
0186 #define K_INT_MAP_I2 2
0187 #define K_INT_MAP_I3 3
0188 #define K_INT_MAP_I4 4
0189 #define K_INT_MAP_I5 5
0190 #define K_INT_MAP_NMI 6
0191 #define K_INT_MAP_DINT 7
0192
0193
0194
0195
0196
0197 #define S_INT_LDT_INTMSG 0
0198 #define M_INT_LDT_INTMSG _SB_MAKEMASK(3, S_INT_LDT_INTMSG)
0199 #define V_INT_LDT_INTMSG(x) _SB_MAKEVALUE(x, S_INT_LDT_INTMSG)
0200 #define G_INT_LDT_INTMSG(x) _SB_GETVALUE(x, S_INT_LDT_INTMSG, M_INT_LDT_INTMSG)
0201
0202 #define K_INT_LDT_INTMSG_FIXED 0
0203 #define K_INT_LDT_INTMSG_ARBITRATED 1
0204 #define K_INT_LDT_INTMSG_SMI 2
0205 #define K_INT_LDT_INTMSG_NMI 3
0206 #define K_INT_LDT_INTMSG_INIT 4
0207 #define K_INT_LDT_INTMSG_STARTUP 5
0208 #define K_INT_LDT_INTMSG_EXTINT 6
0209 #define K_INT_LDT_INTMSG_RESERVED 7
0210
0211 #define M_INT_LDT_EDGETRIGGER 0
0212 #define M_INT_LDT_LEVELTRIGGER _SB_MAKEMASK1(3)
0213
0214 #define M_INT_LDT_PHYSICALDEST 0
0215 #define M_INT_LDT_LOGICALDEST _SB_MAKEMASK1(4)
0216
0217 #define S_INT_LDT_INTDEST 5
0218 #define M_INT_LDT_INTDEST _SB_MAKEMASK(10, S_INT_LDT_INTDEST)
0219 #define V_INT_LDT_INTDEST(x) _SB_MAKEVALUE(x, S_INT_LDT_INTDEST)
0220 #define G_INT_LDT_INTDEST(x) _SB_GETVALUE(x, S_INT_LDT_INTDEST, M_INT_LDT_INTDEST)
0221
0222 #define S_INT_LDT_VECTOR 13
0223 #define M_INT_LDT_VECTOR _SB_MAKEMASK(8, S_INT_LDT_VECTOR)
0224 #define V_INT_LDT_VECTOR(x) _SB_MAKEVALUE(x, S_INT_LDT_VECTOR)
0225 #define G_INT_LDT_VECTOR(x) _SB_GETVALUE(x, S_INT_LDT_VECTOR, M_INT_LDT_VECTOR)
0226
0227
0228
0229
0230
0231 #define M_LDTVECT_RAISEINT 0x00
0232 #define M_LDTVECT_RAISEMBOX 0x40
0233
0234
0235 #endif