Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset 385a3d6 in mainline


Ignore:
Timestamp:
2010-01-06T20:44:47Z (12 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master
Children:
1e816c8
Parents:
6ef2c11
Message:

Fix mouse IRQ bug.

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/amd64/src/amd64.c

    r6ef2c11 r385a3d6  
    212212                        i8042_wire(i8042_instance, kbrd);
    213213                        trap_virtual_enable_irqs(1 << IRQ_KBD);
     214                        trap_virtual_enable_irqs(1 << IRQ_MOUSE);
    214215                }
    215216        }
     
    219220         * self-sufficient.
    220221         */
    221         sysinfo_set_item_val("kbd", NULL, true);
    222         sysinfo_set_item_val("kbd.inr", NULL, IRQ_KBD);
    223         sysinfo_set_item_val("kbd.address.physical", NULL,
     222        sysinfo_set_item_val("i8042", NULL, true);
     223        sysinfo_set_item_val("i8042.inr_a", NULL, IRQ_KBD);
     224        sysinfo_set_item_val("i8042.inr_b", NULL, IRQ_MOUSE);
     225        sysinfo_set_item_val("i8042.address.physical", NULL,
    224226            (uintptr_t) I8042_BASE);
    225         sysinfo_set_item_val("kbd.address.kernel", NULL,
     227        sysinfo_set_item_val("i8042.address.kernel", NULL,
    226228            (uintptr_t) I8042_BASE);
    227229#endif
  • kernel/arch/ia32/src/ia32.c

    r6ef2c11 r385a3d6  
    170170                        i8042_wire(i8042_instance, kbrd);
    171171                        trap_virtual_enable_irqs(1 << IRQ_KBD);
     172                        trap_virtual_enable_irqs(1 << IRQ_MOUSE);
    172173                }
    173174        }
     
    177178         * self-sufficient.
    178179         */
    179         sysinfo_set_item_val("kbd", NULL, true);
    180         sysinfo_set_item_val("kbd.inr", NULL, IRQ_KBD);
    181         sysinfo_set_item_val("kbd.address.physical", NULL,
     180        sysinfo_set_item_val("i8042", NULL, true);
     181        sysinfo_set_item_val("i8042.inr_a", NULL, IRQ_KBD);
     182        sysinfo_set_item_val("i8042.inr_b", NULL, IRQ_MOUSE);
     183        sysinfo_set_item_val("i8042.address.physical", NULL,
    182184            (uintptr_t) I8042_BASE);
    183         sysinfo_set_item_val("kbd.address.kernel", NULL,
     185        sysinfo_set_item_val("i8042.address.kernel", NULL,
    184186            (uintptr_t) I8042_BASE);
    185187#endif
  • uspace/srv/hw/char/i8042/i8042.c

    r6ef2c11 r385a3d6  
    169169        void *vaddr;
    170170
    171         i8042_physical = sysinfo_value("kbd.address.physical");
    172         i8042_kernel = sysinfo_value("kbd.address.kernel");
     171        i8042_physical = sysinfo_value("i8042.address.physical");
     172        i8042_kernel = sysinfo_value("i8042.address.kernel");
    173173        if (pio_enable((void *) i8042_physical, sizeof(i8042_t), &vaddr) != 0)
    174174                return -1;
     
    193193        i8042_kbd.cmds[0].addr = (void *) &((i8042_t *) i8042_kernel)->status;
    194194        i8042_kbd.cmds[3].addr = (void *) &((i8042_t *) i8042_kernel)->data;
    195         ipc_register_irq(sysinfo_value("kbd.inr"), device_assign_devno(), 0, &i8042_kbd);
    196         ipc_register_irq(sysinfo_value("mouse.inr"), device_assign_devno(), 0, &i8042_kbd);
     195        ipc_register_irq(sysinfo_value("i8042.inr_a"), device_assign_devno(), 0, &i8042_kbd);
     196        ipc_register_irq(sysinfo_value("i8042.inr_b"), device_assign_devno(), 0, &i8042_kbd);
    197197
    198198        pio_write_8(&i8042->status, i8042_CMD_WRITE_CMDB);
Note: See TracChangeset for help on using the changeset viewer.