[PATCH 0/3] New input patches

Dmitry Torokhov
2004-09-17T05:01:46Z

Hi Vojtech,

I have some more input patches that I would like you to review:

01-libps2.patch
- move common code from atkbd and psmouse into one place, create
ps2dev structure that should be used to build drivers for hardware
attached to a PS/2 port.
I think that command processing is now race free - instead of using
bit operations on flags the ps2_command and ps2_send_byte simply
take serio->lock (via serio_pause/continue_rx). Since serio->lock
is also taken by interrupt handler anyway it gives us desired
serialization. As wakeup routines take a spinlock as well and
spinlock is guaranteed to be a barrier we should not miss wake up
events either.

02-serio-pin-driver.patch
- Add drv_sem to serio structure and implement serio_[un]pin_driver()
functions. The main purpose is to pin a driver bound to serio port
when accessing driver's data from sysfs attribute handler; otherwise
other thread could unbind/unload driver in a middle of processing.

03-atkbd-sysfs-attr.patch
- Export extra, scroll, set, softrepeat and softraw atkbd properties
via sysfs and allow them to be controlled at run time, independently
for each keyboard.

Now that Linus pulled all pending changes the patches should apply cleanly to
all trees (his, yours and Andrew's).

Please let me know if they are ok and I will push them into my bkbits tree.

Thanks!

--
Dmitry