hai all, The following is the code snippet from drivers/char/keyboard.c

if ((raw_mode = (kbd->kbdmode == VC_RAW))) {
                /*
                 *      The following is a workaround for hardware
                 *      which sometimes send the key release event twice
                 */
                unsigned char next_scancode = scancode|up_flag;
                if (up_flag && next_scancode==prev_scancode) {
                        /* unexpected 2nd release event */
                } else {
                        prev_scancode=next_scancode;
                        put_queue(next_scancode);
                }
                /* we do not return yet, because we want to maintain
                   the key_down array, so that we have the correct
                   values when finishing RAW mode or when changing VT's */
        }

I did so much googling, unable find My doubts are,

1)Is in raw mode also the scancodes are send to tty buffer (as we are using put_queue() here.
2) whether X will read from tty buffer are will it take scancodes directly ,in this case where it will store those scancodes,if X is busy doing
some other work.


In the put_queue function

#ifdef CONFIG_FORWARD_KEYBOARD
extern int forward_chars;

void put_queue(int ch)
{
        if (forward_chars == fg_console+1){
                kbd_forward_char (ch);
        } else {
                if (tty) {
                        tty_insert_flip_char(tty, ch, 0);
                        con_schedule_flip(tty);
                }
        }
}

Where that kbd_forward_char is defined or what it will do.
what CONFIG_FORWARD_KEYBOARD signifies.
This is not present in my config file,(I am using RH linux 2.4.20)

I got confused of it , if you know about please mail me.

  Thanks&Regards,
  P.Manohar,


- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

Reply via email to