Hi Friends, Recently I have entered Linux drivers area. I need some help from you to finalize the design of my application on a Linux Keyboard driver. Please do not fire me if my doubts are trivial. Please answer as I will not be distrubing you too much at a later time. I am supposed to write an application on a special keyboard. This keyboard has some additional keys and a magnetic card reader attached to it. It is connected to my PC using a PS2 connector only. The Keyboard driver should return the data when the new key is pressed and also when a magnetic card is swiped. My Doubts are: 1. As far as I understood, on a keypress, an interrupt is generated, the interrupt handler in the driver checks status register for readiness of data and reads data from data register and gives it to bottom half. Is this right? 2. After that through a read call or through an ioctl call we can transfer this scancode from kernel space to user space. right? 3. I have one purpose in sending this mail. Is there a way for me to send a signal to my user process as soon as the scancode is ready in the driver? If so how can i do that? Because I do not want to start a thread in my application to poll the keyboard. 4. When the card is swiped it might generate data as big as 4K, so should I write a separate ioctl to transfer this data to user space? I think the existing keyboard buffer is not sufficient for this. I am going to use Redhat 6.1 OS on IBM PC. Please clarify my doubts. thanks and regards, syam -- To unsubscribe: mail [EMAIL PROTECTED] with "unsubscribe" as the Subject.