Changes in kernel/arch/mips32/src/exception.c [d99c1d2:da1bafb] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/mips32/src/exception.c
rd99c1d2 rda1bafb 27 27 */ 28 28 29 /** @addtogroup mips32 29 /** @addtogroup mips32 30 30 * @{ 31 31 */ … … 67 67 "Floating Point", 68 68 NULL, NULL, NULL, NULL, NULL, NULL, NULL, 69 "WatchHi/WatchLo", /* 23 */69 "WatchHi/WatchLo", /* 23 */ 70 70 NULL, NULL, NULL, NULL, NULL, NULL, NULL, 71 71 "Virtual Coherency - data", … … 74 74 static void print_regdump(istate_t *istate) 75 75 { 76 const char *pcsymbol = symtab_fmt_name_lookup(istate->epc); 77 const char *rasymbol = symtab_fmt_name_lookup(istate->ra); 78 79 printf("PC: %#x(%s) RA: %#x(%s), SP(%p)\n", istate->epc, pcsymbol, 80 istate->ra, rasymbol, istate->sp); 76 printf("PC: %#x(%s) RA: %#x(%s), SP(%p)\n", istate->epc, 77 symtab_fmt_name_lookup(istate->epc), istate->ra, 78 symtab_fmt_name_lookup(istate->ra), istate->sp); 81 79 } 82 80 … … 135 133 static void interrupt_exception(int n, istate_t *istate) 136 134 { 137 uint32_t cause;138 int i;135 /* Decode interrupt number and process the interrupt */ 136 uint32_t cause = (cp0_cause_read() >> 8) & 0xff; 139 137 140 /* decode interrupt number and process the interrupt */ 141 cause = (cp0_cause_read() >> 8) & 0xff; 142 138 unsigned int i; 143 139 for (i = 0; i < 8; i++) { 144 140 if (cause & (1 << i)) { … … 149 145 */ 150 146 irq->handler(irq); 151 spinlock_unlock(&irq->lock);147 irq_spinlock_unlock(&irq->lock, false); 152 148 } else { 153 149 /* … … 172 168 { 173 169 int i; 174 170 175 171 /* Clear exception table */ 176 172 for (i = 0; i < IVT_ITEMS; i++)
Note:
See TracChangeset
for help on using the changeset viewer.