Hi,all
I've tried to drive the keyboard attached to neponset through PS/2 port, but failed.

My system: linux-2.4.2-rmk2-np2, assabet with neponset, blob-1.0.8-pre2.

In dmesg, the message related to keyboard is just below:
Keyboard timed out<1>
initialize_kbd: Keyboard reset failed, no ACK
pty: 256 Unix98 ptys configured
keyboard: Timed - AT keyboard not present?
keyboard: Timed - AT keyboard not present?

It seems that the kernel tried to detect the keyboard, but didn't find it. When 
assabet was powered on, the leds of the keyboard were lighted and turned off later. 
This indecated that the keyboard module has been loaded and no problem with the 
keyboard power, am I right?

I've traced into keyboard.c. In sa1111_keyb.c, sa1111_init_hw() initializes keybaord 
registers as below:
SKPCR |= SKPCR_PTCLKEN;
KBDCLKDIV = 0;
KBDPRECENT = 127;
KBDCR = KBDCR_ENA;
mdelay(50);
KBDDATA = 0xff;
mdelay(50); 
I printed the value of the registers above. KBDDATA is 0x0 and not 0xff, why? Keyboard 
is a input device, why should we transmit datas to it? How does the KBDDATA register 
work? 
We'll go on. Just after that, kbd_wait() detects KBDSTAT register. If bit 7 is set, it 
indecates Tx is empty and ready. But it is always 0 and issues the "Keyboard timed 
out" message. What is the relation between writing KBDDATA register and the status of 
KBDSTAT?

I've been confused! 
God save me.
Looking forward to your reply. Thanks a lot!

______________________________________

===================================================================
������ѵ������� (http://mail.sina.com.cn)
���˷�����Ϣ�����ɶ��ģ��������ƣ��������񣬴󽱵��㣡 (http://classad.sina.com.cn/)
�����ֻ�ͼƬ��ǧ���������ء������˶������޾���! (http://sms.sina.com.cn/)

_______________________________________________
http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm
Please visit the above address for information on this list.

Reply via email to