Messages in this thread | | | Date | Mon, 07 Jan 2008 18:47:07 +0300 | From | Michael Tokarev <> | Subject | Re: acpi/apm events as inputs: how to handle? |
| |
Michael Tokarev wrote: > Dmitry Torokhov wrote: > [] >>> Well, you use event device in any case; as for finding right one - I guess >>> you look at device capabilities and filter what you need ... >>> >>> {pts/0}% >>> cat /sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input1/capabilities/key >>> 100000 0 0 0 >> Exactly. Any driver working through evdev interface should examine >> device's capabilities and decide whether it is interested in the >> device or not. > > Ok, got it. > But I can't open the device multiple times, can I? > Like, there's a daemon listening on volume up/down and other > multimedia keys for example, and it can't listen to the same > eventX as a daemon that's watching for power/sleep buttons, -- > instead, they should be combined into the same executable. > Unless there's a way to multiplex the events... > (Hmm, this becoming quite... ugly. Oh well.)
Are the capabilities available over ioctl? Because if not, it really is a problem to find correct /sys file for a given /dev node. I'd rather not scan whole /sys to find the right device... ;)
> By the way, where are all the capabilities of input devices > documented?
Looked at the code, but it's a bit... difficult to follow, so to say. What is in ../capabilities/keys, for example - is it a bitmap of all keys the given event device can produce, based on KEY_xxx constants from <linux/input.h> ?
/mjt
| |