Changeset f7a33de in mainline


Ignore:
Timestamp:
2013-12-12T21:30:37Z (10 years ago)
Author:
Jakub Klama <jakub.klama@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0c2d9bb
Parents:
382fb4ba
Message:

Enable interrupts support.

Location:
kernel
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/sparc32/include/arch/exception.h

    r382fb4ba rf7a33de  
    6868extern void mem_address_not_aligned(int n, istate_t *istate);
    6969extern sysarg_t syscall(sysarg_t a1, sysarg_t a2, sysarg_t a3, sysarg_t a4, sysarg_t a5, sysarg_t a6, sysarg_t id);
     70extern void irq_exception(unsigned int nr, istate_t *istate);
    7071
    7172#endif /* !__ASM__ */
  • kernel/arch/sparc32/src/exception.c

    r382fb4ba rf7a33de  
    4040#include <arch/exception.h>
    4141#include <arch/regwin.h>
     42#include <arch/machine_func.h>
    4243#include <syscall/syscall.h>
    4344#include <interrupt.h>
     
    149150//      printf("syscall %d\n", id);
    150151//      printf("args: 0x%08x 0x%08x 0x%08x 0x%08x 0x%08x 0x%08x\n", a1, a2, a3, a4, a5, a6);
    151         if (id == 0x4f) {
    152             flush_windows();
    153             return 0;
    154         }
     152//        if (id == 0x4f) {
     153  //          flush_windows();
     154    //        return 0;
     155      //  }
    155156   
    156157        return syscall_handler(a1, a2, a3, a4, a5, a6, id);
     158}
     159
     160void irq_exception(unsigned int nr, istate_t *istate)
     161{
     162        machine_irq_exception(nr, istate);
    157163}
    158164
  • kernel/arch/sparc32/src/trap_table.S

    r382fb4ba rf7a33de  
    669669        nop
    670670
    671 9:      ld [%sp + 104], %g1
     6719:      inline_restore_kernel
     672
     673        ld [%sp + 104], %g1
    672674        ld [%sp + 108], %g2
    673675        ld [%sp + 112], %g3
     
    754756        /* Jump to actual subroutine */
    755757        mov %g2, %o0
    756         call exc_dispatch
     758        call irq_exception
    757759        add %sp, 128, %o1
    758760
  • kernel/genarch/src/drivers/grlib_irqmp/grlib_irqmp.c

    r382fb4ba rf7a33de  
    4848
    4949        /* Mask all interrupts */
    50         pio_write_32((void *)irqc->regs + GRLIB_IRQMP_MASK_OFFSET, 0);
     50        pio_write_32((void *)irqc->regs + GRLIB_IRQMP_MASK_OFFSET, 0x8);
    5151}
    5252
Note: See TracChangeset for help on using the changeset viewer.