Messages in this thread | | | Date | Tue, 08 Dec 2009 12:25:37 -0200 | From | Mauro Carvalho Chehab <> | Subject | Re: [RFC] Should we create a raw input interface for IR's ? - Was: Re: [PATCH 1/3 v2] lirc core device driver infrastructure |
| |
Krzysztof Halasa wrote: > Mauro Carvalho Chehab <mchehab@redhat.com> writes: >> IMO, the better is to have an API to allow creation of multiple interfaces >> per IR receiver, based on some scancode matching table and/or on some >> matching mask. > > I think setting the keytables for each logical device would do.
Yes. > > I.e. just have a way to create additional logical devices. Each can have > its own keytable. The decoders would send their output to all logical > remotes, trying to match the tables etc. > >> It should be possible to use the filter API to match different IR's by >> vendor/product on protocols that supports it, > > That would mean unnecessary limiting.
If the mask is (unsigned)-1, it will not add any limit. This should be the default.
The advantage of the mask is that you can speedup the keycode decoding by not calling a seek routine in the cases where it doesn't make sense.
Also, the cost of scancode & scancode_mask is cheap enough, comparing with the potential optimization gain of not seeking a data in a table that wouldn't match anyway.
Also, the IR core may automatically generate such mask, by doing an "and" operation of all the scancodes at the table during table initialization/changes. If the mask is zero, it defaults to use a (unsigned) -1 mask.
Cheers, Mauro.
| |