[lkml]   [2001]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: AT keyboard optional on i386?

    > I'm trying to run Linux on a broken motherboard that is constantly
    > producing random noice on the AT keyboard port. I'm going to use a USB
    > keyboard, but I cannot get Linux to ignore the AT keyboard port.

    Not that I know. The current way it works is:

    1) Current 2.4 way for AT keyboards:

    pc_keyb.c -(raw)-> keyboard.c -(raw)-> pc_keyb.c -->
    >--(cooked)-> keyboard.c -(chars)-> tty

    2) Current 2.4 way for USB keyboards (uses keybdev):

    usb.c -(usb)-> hid.c -(events)-> input.c -(events)-> keybdev.c -->
    >--(raw)-> keyboard.c -(raw)-> pc_keyb.c -(cooked)-> keyboard.c -->
    >--(chars)-> tty

    So as you can see even USB keyboards depend on pc_keyb.c. So their is no
    way around this.

    > Is there any way to disable the AT keyboard? I think the best solution
    > would be to make it optional, just like almost everything in the kernel,
    > e.g. PS/2 mouse. Some embedded i386 systems could save a few kilobytes of
    > RAM by disabling the AT keyboard.

    This is a 2.5.X issue since changing the current pc_keyb.c keyboard
    driver would break many drivers which like the USB keybaords fake they are
    PS/2 keyboards.
    BTW I already have a kernel tree that does allow the AT keyboard to be
    optional. The AT keyboard has been ported to the linux input api and it
    has been working very well for along time. In this kernel tree you have:

    3) Ruby (my tree's name) way for AT keyboards:

    i8042.c -(raw)-> atkbd.c -(events)-> input.c -->
    >--(events)-> keyboard.c -(chars)-> tty

    4) Ruby way for USB keyboards:

    usb.c -(usb)-> hid.c -(events)-> input.c -->
    >--(events)-> keyboard.c -(chars)-> tty

    You can a few nice tricks with it like plug in two PS/2 keyboards. I have
    this for my home setup. The only thing is make sure you don't have both
    keyboards plugged in when you turn your PC on. I found BIOS get confussed
    by two PS/2 keyboards. As you can it is very easy to multiplex many
    keyboards with the above design. I have had 4 different keyboards hooked
    up to my system and functioning at the same time. We even got a Sun
    keyboard to work on a intel box :-) Another nice feature is event numbers
    from the input api can be used in the keymap. This has a nice effect that
    keymaps will be architecture independent, too. The only mess is raw mode
    which /dev/event makes obsolute.

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 12:54    [W:0.024 / U:33.032 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site