Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/mips32/src/exception.c

    rd99c1d2 rda1bafb  
    2727 */
    2828
    29 /** @addtogroup mips32 
     29/** @addtogroup mips32
    3030 * @{
    3131 */
     
    6767        "Floating Point",
    6868        NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    69         "WatchHi/WatchLo", /* 23 */
     69        "WatchHi/WatchLo",  /* 23 */
    7070        NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7171        "Virtual Coherency - data",
     
    7474static void print_regdump(istate_t *istate)
    7575{
    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);
    8179}
    8280
     
    135133static void interrupt_exception(int n, istate_t *istate)
    136134{
    137         uint32_t cause;
    138         int i;
     135        /* Decode interrupt number and process the interrupt */
     136        uint32_t cause = (cp0_cause_read() >> 8) & 0xff;
    139137       
    140         /* decode interrupt number and process the interrupt */
    141         cause = (cp0_cause_read() >> 8) & 0xff;
    142        
     138        unsigned int i;
    143139        for (i = 0; i < 8; i++) {
    144140                if (cause & (1 << i)) {
     
    149145                                 */
    150146                                irq->handler(irq);
    151                                 spinlock_unlock(&irq->lock);
     147                                irq_spinlock_unlock(&irq->lock, false);
    152148                        } else {
    153149                                /*
     
    172168{
    173169        int i;
    174 
     170       
    175171        /* Clear exception table */
    176172        for (i = 0; i < IVT_ITEMS; i++)
Note: See TracChangeset for help on using the changeset viewer.