Subversion Repositories HelenOS

Rev

Rev 2263 | Rev 2274 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2263 Rev 2264
Line 32... Line 32...
32
/** @file
32
/** @file
33
    @brief  Exception handlers and exception initialization routines.
33
    @brief  Exception handlers and exception initialization routines.
34
 */
34
 */
35
 
35
 
36
#include <arch/exception.h>
36
#include <arch/exception.h>
37
#include "aux_print/printf.h"
37
#include <arch/debug_print/print.h>
38
#include <arch/memstr.h>
38
#include <arch/memstr.h>
39
#include <arch/regutils.h>
39
#include <arch/regutils.h>
40
#include <interrupt.h>
40
#include <interrupt.h>
41
#include <arch/drivers/gxemul.h>
41
#include <arch/drivers/gxemul.h>
42
 
42
 
Line 158... Line 158...
158
                /* The IRQ handler was found. */
158
                /* The IRQ handler was found. */
159
                irq->handler(irq, irq->arg);
159
                irq->handler(irq, irq->arg);
160
                spinlock_unlock(&irq->lock);
160
                spinlock_unlock(&irq->lock);
161
            } else {
161
            } else {
162
                /* Spurious interrupt.*/
162
                /* Spurious interrupt.*/
163
                aux_printf("cpu%d: spurious interrupt (inum=%d)\n", CPU->id, i);
163
                dprintf("cpu%d: spurious interrupt (inum=%d)\n", CPU->id, i);
164
            }
164
            }
165
        }
165
        }
166
    }
166
    }
167
#endif
167
#endif
168
/* TODO remove after testing the above code
168
/* TODO remove after testing the above code
Line 171... Line 171...
171
                char readchar = *(char*)0x10000000;
171
                char readchar = *(char*)0x10000000;
172
                if (readchar == 0) {
172
                if (readchar == 0) {
173
                    aux_puts("?");
173
                    aux_puts("?");
174
                }
174
                }
175
                else {
175
                else {
176
                    aux_printf("%c", readchar);
176
                    dprintf("%c", readchar);
177
                }
177
                }
178
               
178
               
179
            }
179
            }
180
            else if (i == TIMER_IRQ) {
180
            else if (i == TIMER_IRQ) {
181
                aux_printf("\n.\n");
181
                dprintf("\n.\n");
182
                //acknowledge
182
                //acknowledge
183
                *(uint32_t*)0x15000110 = 0;
183
                *(uint32_t*)0x15000110 = 0;
184
            }
184
            }
185
        }
185
        }
186
    }
186
    }