Changeset 323a5aaf in mainline for kernel/genarch/src


Ignore:
Timestamp:
2008-11-30T12:17:56Z (17 years ago)
Author:
Jakub Vana <jakub.vana@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0ad9e47
Parents:
57e76cb
Message:

Legacy IRQ support, uspace NS16550 support, some minor changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/genarch/src/kbd/ns16550.c

    r57e76cb r323a5aaf  
    3939#include <genarch/kbd/scanc.h>
    4040#include <genarch/kbd/scanc_sun.h>
     41#include <arch/drivers/kbd.h>
    4142#ifndef ia64
    42 #include <arch/drivers/kbd.h>
    4343#include <arch/drivers/ns16550.h>
    4444#endif
     
    131131        ns16550_irq.cir_arg = cir_arg;
    132132        irq_register(&ns16550_irq);
     133
     134
     135        while ((ns16550_lsr_read(&ns16550) & LSR_DATA_READY))
     136                ns16550_rbr_read(&ns16550);
     137
    133138       
    134139        sysinfo_set_item_val("kbd", NULL, true);
    135 #ifndef ia64
    136140        sysinfo_set_item_val("kbd.type", NULL, KBD_NS16550);
    137 #endif
    138141        sysinfo_set_item_val("kbd.devno", NULL, devno);
    139142        sysinfo_set_item_val("kbd.inr", NULL, inr);
    140143        sysinfo_set_item_val("kbd.address.virtual", NULL, port);
     144        sysinfo_set_item_val("kbd.port", NULL, port);
    141145
    142146#ifdef CONFIG_NS16550_INTERRUPT_DRIVEN
     
    148152#ifdef ia64
    149153        uint8_t c;
     154        // This switches rbr & ier to mode when accept baudrate constant
    150155        c = ns16550_lcr_read(&ns16550);
    151156        ns16550_lcr_write(&ns16550, 0x80 | c);
Note: See TracChangeset for help on using the changeset viewer.