Hi Christopher, On Fri, Sep 25, 2009 at 03:01:37PM +0200, Christopher Friedt wrote: > Hi folks, > > Recently, I ported Linux to a previously unsupported device (it uses > pxa270 processer, so most of the work was already done), and I had a > couple of issues that I hope you could help me with. > > 1) I wrote a new 'multi-function' driver for the STMPE2401 gpio > expander, which also has a keypad controller, 3 pwm channels, and a > rotator input, and I would appreciate it if a couple of people could > review it for me so that it could be submitted upstream. So far, only > the keypad function is implemented because my device doesn't use the > others. However, I've already coded in most of the structure for the > other device functions but they just return -ENOSYS on probe. I'm sure > that someone with sufficient experience could probably look at my > driver and give me a few tips on how to improve it before submission. > Which leads me to my next question... Just post in on the mailing list (and mark that it is for initial review). > > 2) currently the input is a bit complicated - there are a couple of > different modifier keys, and I'm not really sure where to start to > have userspace handle the scancode-keycode mapping. Right now it's > done in kernel mode in a small callback function. Can somebody point > me in the right direction? It would be nice if the keypad worked at > the console and also in X or other graphical environments. Currently > I'm trying to get it to work in Android, which just uses the typical > event interface for key-remapping. > > I suppose one way to do it would be to have the kernel dynamically > switch based on if the event device is open... still it's a bit > confusing. Any tips? > I would not recommend doing it, nothing stops userspace from accessing the device through both inetrfaces (evdev and legacy one) at the same time. It would be curious to see what kind of keypad you have. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html