X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fdevices%2Fapic.c;h=41f4daa17534054373bf807b8cb56e7a26d8987a;hb=7bb4a918835892e9071ffbdef1ea8e57f9a12950;hp=7434b7d85e86faa8bd203d3e674da1554a696767;hpb=e92ee3df43ad8bb603acce2832a67cc2eea794c0;p=palacios.git diff --git a/palacios/src/devices/apic.c b/palacios/src/devices/apic.c index 7434b7d..41f4daa 100644 --- a/palacios/src/devices/apic.c +++ b/palacios/src/devices/apic.c @@ -741,22 +741,10 @@ static int apic_get_intr_number(void * private_data) { } static int apic_raise_intr(void * private_data, int irq) { - struct vm_device * dev = (struct vm_device *)private_data; - struct apic_state * apic = (struct apic_state *)dev->private_data; - - return activate_apic_irq(apic, irq); + return 0; } static int apic_lower_intr(void * private_data, int irq) { - struct vm_device * dev = (struct vm_device *)private_data; - struct apic_state * apic = (struct apic_state *)dev->private_data; - int major_offset = irq & ~0x00000007; - int minor_offset = irq & 0x00000007; - uchar_t * req_location = apic->int_req_reg + major_offset; - uchar_t flag = 0x01 << minor_offset; - - *req_location &= ~flag; - return 0; } @@ -874,7 +862,7 @@ static int apic_init(struct vm_device * dev) { struct guest_info * info = dev->vm; struct apic_state * apic = (struct apic_state *)(dev->private_data); - v3_set_intr_controller(dev->vm, &intr_ops, dev); + v3_register_intr_controller(dev->vm, &intr_ops, dev); v3_add_timer(dev->vm, &timer_ops, dev); init_apic_state(apic);