Changeset d0c5901 in mainline for arch/ia64/src/interrupt.c


Ignore:
Timestamp:
2006-06-02T14:07:29Z (19 years ago)
Author:
Jakub Vana <jakub.vana@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c034b16
Parents:
116d1ef4
Message:

IA64 uspace keyboard kernel part

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/ia64/src/interrupt.c

    r116d1ef4 rd0c5901  
    4545#include <proc/scheduler.h>
    4646#include <ipc/sysipc.h>
     47#include <ipc/irq.h>
     48#include <ipc/ipc.h>
    4749
    4850
     
    5355
    5456#define BUNDLE_SIZE             16
     57
    5558
    5659char *vector_names_64_bundle[VECTORS_64_BUNDLE] = {
     
    135138        printf("Interrupted context dump:\n");
    136139        printf("ar.bsp=%p\tar.bspstore=%p\n", istate->ar_bsp, istate->ar_bspstore);
    137         printf("ar.rnat=%#llx\tar.rsc=%$llx\n", istate->ar_rnat, istate->ar_rsc);
    138         printf("ar.ifs=%#llx\tar.pfs=%#llx\n", istate->ar_ifs, istate->ar_pfs);
    139         printf("cr.isr=%#llx\tcr.ipsr=%#llx\t\n", istate->cr_isr.value, istate->cr_ipsr);
     140        printf("ar.rnat=%#018llx\tar.rsc=%#018llx\n", istate->ar_rnat, istate->ar_rsc);
     141        printf("ar.ifs=%#018llx\tar.pfs=%#018llx\n", istate->ar_ifs, istate->ar_pfs);
     142        printf("cr.isr=%#018llx\tcr.ipsr=%#018llx\t\n", istate->cr_isr.value, istate->cr_ipsr);
    140143       
    141         printf("cr.iip=%#llx, #%d\t(%s)\n", istate->cr_iip, istate->cr_isr.ei, iip ? iip : "?");
    142         printf("cr.iipa=%#llx\t(%s)\n", istate->cr_iipa, iipa ? iipa : "?");
    143         printf("cr.ifa=%#llx\t(%s)\n", istate->cr_ifa, ifa ? ifa : "?");
     144        printf("cr.iip=%#018llx, #%d\t(%s)\n", istate->cr_iip, istate->cr_isr.ei, iip);
     145        printf("cr.iipa=%#018llx\t(%s)\n", istate->cr_iipa, iipa);
     146        printf("cr.ifa=%#018llx\t(%s)\n", istate->cr_ifa, ifa);
    144147}
    145148
     
    243246}
    244247
     248void virtual_interrupt(__u64 irq,void *param)
     249{
     250        switch(irq) {
     251                case IRQ_KBD:
     252                        if(kbd_uspace) ipc_irq_send_notif(irq);
     253                        break;
     254                default:
     255                        panic("\nUnhandled Virtual Interrupt request %d\n", irq);
     256                break;
     257        }
     258}
     259
    245260/* Reregister irq to be IPC-ready */
    246261void irq_ipc_bind_arch(__native irq)
    247262{
     263        if(irq==IRQ_KBD) {
     264                kbd_uspace=1;
     265                return;
     266        }
    248267        panic("not implemented\n");
    249268        /* TODO */
    250269}
     270
     271
     272
Note: See TracChangeset for help on using the changeset viewer.