linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: Devin Heitmueller <dheitmueller@kernellabs.com>,
	Jon Smirl <jonsmirl@gmail.com>,
	Maxim Levitsky <maximlevitsky@gmail.com>,
	awalls@radix.net, j@jannau.net, jarod@redhat.com,
	jarod@wilsonet.com, khc@pm.waw.pl, linux-input@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-media@vger.kernel.org,
	lirc-list@lists.sourceforge.net, superm1@ubuntu.com,
	Christoph Bartelmus <lirc@bartelmus.de>
Subject: Re: [RFC v2] Another approach to IR
Date: Wed, 2 Dec 2009 12:01:01 -0800	[thread overview]
Message-ID: <20091202200101.GC22689@core.coreip.homeip.net> (raw)
In-Reply-To: <4B16C10E.6040907@redhat.com>

On Wed, Dec 02, 2009 at 05:33:34PM -0200, Mauro Carvalho Chehab wrote:
> Dmitry Torokhov wrote:
> >> The raw interface applies only to the devices that doesn't have a hardware decoder
> >> (something between 40%-60% of the currently supported devices).
> > 
> > 50% is quite a number I think. But if driver does not allow access to
> > the raw stream - it will refuse binding to lirc_dev interface.
> 
> Ok.
> 
> > We need to cater to the future cases as well. I don't want to redesign
> > it in 2 years. But for devices that have only hardware decoders I
> > suppose we can short-curcuit "interfaces" and have a library-like module
> > creating input devices directly.
> 
> We really need only one interface for those devices. However, protocol selection
> is needed, as it is associated with the scantable on those devices.
> a sysfs entry would solve this issue.
> 
> Also, we need a better schema to cleanup the keycode table. Currently, the only way 
> I'm aware is to run a loop from 0 to 65535 associating a scancode to KEY_UNKNOWN or
> to KEY_RESERVED.

I guess we could entertain EVIOCSKMAPFLUSH or something...

> 
> >> In the case of the cheap devices with just raw interfaces, running in-kernel
> >> decoders, while it will work if you create one interface per protocol
> >> per IR receiver, this also seems overkill. Why to do that? It sounds that it will
> >> just create additional complexity at the kernelspace and at the userspace, since
> >> now userspace programs will need to open more than one device to receive the
> >> keycodes.
> > 
> > _Yes_!!! You open as many event devices as there are devices you are
> > interested in receiving data from. Multiplexing devices are bad, bad,
> > bad. Witness /dev/input/mouse and all the attempts at working around the
> > fact that if you have a special driver for one of your devices you
> > receive events from the same device through 2 interfaces and all kind of
> > "grab", "super-grab", "smart-grab" schemes are born.
> 
> The only device that the driver can actually see is the IR receiver. There's no way to
> know if there is only one physical IR sending signals to it or several different models,
> especially if we consider that programmable IR's can be able even to generate more than one
> protocol at the same time, and can emulate other IR types.
> 
> You might create some artificial schema to try to deal with different IR's being received
> at the same IR receiver, but, IMHO, this will just add a complex abstraction layer.
> 
> Also, this won't give any real gain, as either both IR's will generate the same scancodes (and you can't distinguish what IR generated that code), or the scancode is different, and you
> can handle it differently.

No it will. User will have _an option_ of assigning a particular remote
to a particular application. Whether he or she will chose to entertain
this option is up to that user.

> 
> >>> (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?
> 
> IMHO, the better is to use a separate interface for the IR transmitters,
> on the devices that support this feature. There are only a few devices
> I'm aware of that are able to transmit IR codes.

-ENOOPINION at the moment.

-- 
Dmitry

  parent reply	other threads:[~2009-12-02 20:01 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-01 15:08 [RFC v2] Another approach to IR Jon Smirl
2009-12-01 15:47 ` Maxim Levitsky
2009-12-01 16:16   ` Jon Smirl
2009-12-01 17:03     ` Mauro Carvalho Chehab
2009-12-01 17:09       ` Devin Heitmueller
2009-12-01 17:29         ` Mauro Carvalho Chehab
2009-12-01 17:54           ` Dmitry Torokhov
2009-12-01 19:00             ` Mauro Carvalho Chehab
2009-12-01 19:27               ` Jon Smirl
2009-12-01 20:11               ` Dmitry Torokhov
2009-12-01 21:05                 ` Mauro Carvalho Chehab
2009-12-02  9:38                   ` Dmitry Torokhov
2009-12-02 12:44                     ` Mauro Carvalho Chehab
2009-12-02 17:10                       ` Dmitry Torokhov
2009-12-02 17:30                         ` Jon Smirl
2009-12-02 18:23                           ` Dmitry Torokhov
2009-12-02 18:57                             ` Jon Smirl
2009-12-02 20:54                               ` Mauro Carvalho Chehab
2009-12-02 19:22                           ` Jarod Wilson
2009-12-02 19:56                             ` Dmitry Torokhov
2009-12-02 20:04                               ` Jarod Wilson
2009-12-02 20:14                                 ` Dmitry Torokhov
2009-12-02 20:23                                   ` Mauro Carvalho Chehab
2009-12-02 20:53                                     ` Dmitry Torokhov
2009-12-02 21:13                                       ` Mauro Carvalho Chehab
2009-12-03 16:03                                         ` Ferenc Wagner
2009-12-03 16:33                                           ` Mauro Carvalho Chehab
2009-12-03 16:50                                             ` Jon Smirl
2009-12-03 17:19                                               ` Mauro Carvalho Chehab
2009-12-03 17:31                                             ` Dmitry Torokhov
2009-12-04 16:11                                               ` Ferenc Wagner
2009-12-02 20:42                                   ` Jarod Wilson
2009-12-02 20:48                                     ` Dmitry Torokhov
2009-12-02 20:57                                       ` Jarod Wilson
2009-12-02 21:12                                         ` Trent Piepho
2009-12-02 21:28                                           ` Jarod Wilson
2009-12-02 21:40                                             ` Mauro Carvalho Chehab
2009-12-03 18:06                                             ` Krzysztof Halasa
2009-12-03  1:19                                   ` Andy Walls
2009-12-03  2:27                                     ` hermann pitton
2009-12-03  0:20                                 ` Jon Smirl
2009-12-03  2:22                                   ` Mauro Carvalho Chehab
2009-12-03  5:08                                     ` Jon Smirl
2009-12-03 11:09                                       ` Mauro Carvalho Chehab
2009-12-03 18:18                                         ` Krzysztof Halasa
2009-12-03 20:54                                           ` Mauro Carvalho Chehab
2009-12-03  2:48                                   ` Trent Piepho
2009-12-03  4:13                                     ` Jarod Wilson
2009-12-03  5:18                                       ` Jon Smirl
2009-12-03 11:20                                         ` Mauro Carvalho Chehab
2009-12-03 19:48                                   ` alhaz
2009-12-02 19:33                         ` Mauro Carvalho Chehab
2009-12-02 19:50                           ` Jon Smirl
2009-12-02 19:58                             ` Jon Smirl
2009-12-02 20:47                             ` Mauro Carvalho Chehab
2009-12-02 19:55                           ` Jarod Wilson
2009-12-03  1:02                             ` Andy Walls
2009-12-03 10:00                               ` Mauro Carvalho Chehab
2009-12-03 12:02                                 ` Andy Walls
2009-12-03 11:09                               ` Mauro Carvalho Chehab
2009-12-02 20:01                           ` Dmitry Torokhov [this message]
2009-12-02 15:37                     ` Jon Smirl
2009-12-02 17:00                       ` Dmitry Torokhov
2009-12-02 11:26                   ` Gerd Hoffmann
2009-12-02 12:45                     ` Mauro Carvalho Chehab
2009-12-01 17:35         ` Patrick Boettcher
2009-12-01 17:41           ` Mauro Carvalho Chehab
2009-12-01 18:19       ` Jon Smirl
2009-12-01 17:37   ` Mauro Carvalho Chehab
  -- strict thread matches above, loose matches on Subject: below --
2009-12-03 19:47 Guus Sliepen
2009-12-03 21:53 ` Jarod Wilson
2009-12-05 11:23   ` Guus Sliepen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091202200101.GC22689@core.coreip.homeip.net \
    --to=dmitry.torokhov@gmail.com \
    --cc=awalls@radix.net \
    --cc=dheitmueller@kernellabs.com \
    --cc=j@jannau.net \
    --cc=jarod@redhat.com \
    --cc=jarod@wilsonet.com \
    --cc=jonsmirl@gmail.com \
    --cc=khc@pm.waw.pl \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=lirc-list@lists.sourceforge.net \
    --cc=lirc@bartelmus.de \
    --cc=maximlevitsky@gmail.com \
    --cc=mchehab@redhat.com \
    --cc=superm1@ubuntu.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).