Thread (6 messages) 6 messages, 2 authors, 2010-02-05

Re: [RFC] Generic implementation for Input enable disable methods

From: Onkalo Samu <hidden>
Date: 2010-01-22 06:28:42

On Wed, 2010-01-20 at 07:28 +0100, Onkalo Samu.P (Nokia-D/Tampere)
wrote:
Hi

Some time ago, there were two parallel implementation proposals for
disabling input devices. See following email:
http://www.spinics.net/lists/linux-input/msg05984.html

It was asked to combine these two to have generic interface.
I'm proposing following sysfs interface:

../input0/disable/avail_xx
../input0/disable/disable_xx

So, new directory for disable control entries. Own entries for each
of the events or event group. Implementation is using bitmap format:

Examples

See what event groups can be disabled. Disable and enable all the groups
# cat avail_ev
0-1,4,20
# echo "0-1,4,20" > disable_ev
# cat disable_ev
0-1,4,20
# echo -e "\0" > disable_ev
# cat disable_ev
 
See what individual events can be disabled. Disable and enable one of
them:
# cat avail_key
528
# echo "528" > disable_key
# cat disable_key
528
# echo -e "\0" -> disable_key
# cat disable_key
After some playing with this interface it is quite clear that this is
not very user friendly. To have better usability, I'll change my
proposal to following one:

Entries are changed to this format:
.../inputx/disable/enable_xx
.../inputx/disable/disable_xx
(no avail_xx anymore)

Use:
echo "1,2" > disable_xx  disable events 1 and 2
echo "" > disable_xx   do nothing
cat disable_xx   list of currently disabled entries

echo "4-5" > enable_xx enable events 4,5,6
echo "" > enable_xx  do nothing
cat enable_xx   list of currenty enabled entries

Read operation returns only events which can be controlled via this
interface.

Enable all currently disabled events:
cat disable_xx > enable_xx

Disable all currently enabled events:
cat enable_xx > disable_XX

This way it is much easier to control individual events.
Input core just provides sysfs entries and call call-back functions. 
Actual work is done in the drivers like gpio-keys.

Does this interface sound acceptable solution?
If it is, I'll finalize my implentation and send it for review.
This interface is tested to work with twl4030_keypad driver and
gpio-keys. It should also work fine with touch screen input drivers.

This is more or less small embedded device feature. Should it be behind
configuration flags similar to CONFIG_PM? Of course this would introduce
some compilation flags to the input-core.

Regard,
Samu



--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help