Re: [RFC v2] Another approach to IR

From: Dmitry Torokhov
Date: Wed Dec 02 2009 - 14:56:47 EST


On Wed, Dec 02, 2009 at 02:22:18PM -0500, Jarod Wilson wrote:
> On 12/2/09 12:30 PM, Jon Smirl wrote:
>>>>> (for each remote/substream that they can recognize).
>>>> >>
>>>> >> I'm assuming that, by remote, you're referring to a remote receiver (and not to
>>>> >> the remote itself), right?
>>> >
>>> > If we could separate by remote transmitter that would be the best I
>>> > think, but I understand that it is rarely possible?
> >
>> The code I posted using configfs did that. Instead of making apps IR
>> aware it mapped the vendor/device/command triplets into standard Linux
>> keycodes. Each remote was its own evdev device.
>
> Note, of course, that you can only do that iff each remote uses distinct
> triplets. A good portion of mythtv users use a universal of some sort,
> programmed to emulate another remote, such as the mce remote bundled
> with mceusb transceivers, or the imon remote bundled with most imon
> receivers. I do just that myself.
>
> Personally, I've always considered the driver/interface to be the
> receiver, not the remote. The lirc drivers operate at the receiver
> level, anyway, and the distinction between different remotes is made by
> the lirc daemon.

The fact that lirc does it this way does not necessarily mean it is the
most corerct way. Do you expect all bluetooth input devices be presented
as a single blob just because they happen to talk to the sane receiver
in yoru laptop? Do you expect your USB mouse and keyboard be merged
together just because they end up being serviced by the same host
controller? If not why remotes should be any different?

Now I understand that if 2 remotes send completely identical signals we
won't be able to separete them, but in cases when we can I think we
should.

--
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/