lkml.org 
[lkml]   [2005]   [Apr]   [8]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateFri, 8 Apr 2005 11:37:17 +0530 (IST)
From"P.Manohar" <>
Subjectscancodes to X-Windows
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 majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-04-08 08:12    [from the cache]
©2003-2008