From: Jon Smirl <jonsmirl@gmail.com>
To: Christoph Bartelmus <lirc@bartelmus.de>
Cc: awalls@radix.net, christoph@bartelmus.de,
dmitry.torokhov@gmail.com, 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,
mchehab@redhat.com, superm1@ubuntu.com
Subject: Re: [RFC] What are the goals for the architecture of an in-kernel IR system?
Date: Fri, 27 Nov 2009 12:49:28 -0500 [thread overview]
Message-ID: <9e4733910911270949s3e8b5ba9qfe5025d490ad0cfa@mail.gmail.com> (raw)
In-Reply-To: <BDgcsm11qgB@lirc>
On Fri, Nov 27, 2009 at 12:29 PM, Christoph Bartelmus <lirc@bartelmus.de> wrote:
>> Maybe we decide to take the existing LIRC system as is and not
>> integrate it into the input subsystem. But I think there is a window
>> here to update the LIRC design to use the latest kernel features.
>
> If it ain't broke, don't fix it.
>
> I'm also not against using the input layer where it makes sense.
>
> For devices that do the decoding in hardware, the only thing that I don't
> like about the current kernel implementation is the fact that there are
> mapping tables in the kernel source. I'm not aware of any tools that let
> you change them without writing some keymaps manually.
>
> I'm also not against in-kernel decoding in general. We already agreed last
> year that we can include an interface in lirc_dev that feeds the signal
> data to an in-kernel decoder if noone from userspace reads it. That's
> close to an one line change in lirc_dev. You won't have to change a single
> device driver for this. I think there also was common understanding that
> there will be cases where in-kernel decoding will not be possible for
> esoteric protocols and that there needs to be an interface to deliver the
> raw data to userspace.
>
> My point just is that it took LIRC a very long time until the most common
> protocols have been fully supported, with all the toggle bits, toggle
> masks, repeat codes, sequences, headers, differing gap values, etc. Or
> take a look at crappy hardware like the Igor Cesko's USB IR Receiver. This
> device cripples the incoming signal except RC-5 because it has a limited
> buffer size. LIRC happily accepts the data because it does not make any
> assumptions on the protocol or bit length. With the approach that you
> suggested for the in-kernel decoder, this device simply will not work for
> anything but RC-5. The devil is in all the details. If we decide to do the
> decoding in-kernel, how long do you think this solution will need to
> become really stable and mainline? Currently I don't even see any
> consensus on the interface yet. But maybe you will prove me wrong and it's
> just that easy to get it all working.
> I also understand that people want to avoid dependency on external
> userspace tools. All I can tell you is that the lirc tools already do
> support everything you need for IR control. And as it includes a lot of
> drivers that are implemented in userspace already, LIRC will just continue
> to do it's work even when there is an alternative in-kernel.
> If LIRC is being rejected I don't have a real problem with this either,
> but we finally need a decision because for me this is definitely the last
> attempt to get this into the kernel.
Christoph, take what you know from all of the years of working on LIRC
and design the perfect in-kernel system. This is the big chance to
redesign IR support and get rid of any past mistakes. Incorporate any
useful chunks of code and knowledge from the existing LIRC into the
new design. Drop legacy APIs, get rid of daemons, etc. You can do this
redesign in parallel with existing LIRC. Everyone can continue using
the existing code while the new scheme is being built. Think of it as
LIRC 2.0. You can lead this design effort, you're the most experience
developer in the IR area. Take advantage of this window to make a
design that is fully integrated with Linux - put IR on equal footing
with the keyboard and mouse as it should be.
--
Jon Smirl
jonsmirl@gmail.com
next prev parent reply other threads:[~2009-11-27 17:49 UTC|newest]
Thread overview: 254+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-27 15:57 [RFC] What are the goals for the architecture of an in-kernel IR system? Jon Smirl
2009-11-27 16:57 ` Andy Walls
2009-11-27 17:29 ` Christoph Bartelmus
2009-11-27 17:49 ` Jon Smirl [this message]
2009-11-27 19:03 ` Ferenc Wagner
2009-11-27 19:21 ` Jon Smirl
2009-11-28 1:34 ` Dmitry Torokhov
2009-11-29 12:01 ` Christoph Bartelmus
2009-11-30 10:41 ` Mauro Carvalho Chehab
2009-11-30 19:49 ` Krzysztof Halasa
2009-11-30 21:35 ` Jon Smirl
2009-12-01 7:45 ` Christoph Bartelmus
2009-12-01 11:38 ` Andy Walls
2009-12-01 14:10 ` Maxim Levitsky
2009-12-03 17:31 ` Krzysztof Halasa
2009-11-28 9:04 ` Simon Kenyon
2009-11-28 11:21 ` Mauro Carvalho Chehab
2009-11-29 11:50 ` Christoph Bartelmus
2009-11-30 12:34 ` Mauro Carvalho Chehab
2009-12-01 9:52 ` Gerd Hoffmann
2009-12-01 13:11 ` Mauro Carvalho Chehab
2009-12-01 14:32 ` Jarod Wilson
2009-12-01 10:20 ` Gerd Hoffmann
2009-12-01 14:14 ` Mauro Carvalho Chehab
2009-12-01 15:28 ` Gerd Hoffmann
2009-12-03 4:29 ` Jarod Wilson
2009-12-03 12:09 ` Gerd Hoffmann
2009-12-03 17:55 ` Dmitry Torokhov
2009-12-03 18:33 ` Mauro Carvalho Chehab
2009-12-04 10:06 ` Dmitry Torokhov
2009-12-04 14:12 ` Mauro Carvalho Chehab
2009-12-04 15:42 ` Jon Smirl
2009-12-06 7:09 ` Dmitry Torokhov
2009-12-06 11:03 ` Mauro Carvalho Chehab
2009-12-06 20:19 ` Krzysztof Halasa
2009-12-08 0:00 ` Mauro Carvalho Chehab
2009-12-08 14:06 ` Krzysztof Halasa
2009-12-07 7:48 ` Dmitry Torokhov
2009-12-07 15:34 ` Mauro Carvalho Chehab
2009-12-07 18:34 ` Dmitry Torokhov
2009-12-07 23:01 ` Mauro Carvalho Chehab
2009-12-06 7:14 ` Dmitry Torokhov
2009-12-06 11:23 ` Mauro Carvalho Chehab
2009-12-03 18:56 ` Jon Smirl
2009-12-03 21:10 ` Mauro Carvalho Chehab
2009-12-03 21:51 ` Christoph Bartelmus
2009-12-03 22:12 ` Dmitry Torokhov
2009-12-04 7:37 ` Christoph Bartelmus
2009-12-04 14:33 ` Mauro Carvalho Chehab
2009-12-04 21:46 ` Christoph Bartelmus
2009-12-04 22:07 ` Dmitry Torokhov
2009-12-04 23:01 ` Christoph Bartelmus
2009-12-04 23:15 ` Dmitry Torokhov
2009-12-06 11:58 ` Christoph Bartelmus
2009-12-07 7:51 ` Dmitry Torokhov
2009-12-08 22:27 ` Christoph Bartelmus
2009-12-05 0:28 ` Jon Smirl
2009-12-05 1:48 ` Andy Walls
2009-12-05 2:10 ` Andy Walls
2009-12-05 3:45 ` Jon Smirl
2009-12-06 2:30 ` Andy Walls
2009-12-06 17:26 ` Krzysztof Halasa
2009-12-12 22:52 ` david
2009-12-06 3:36 ` hermann pitton
2009-12-06 6:55 ` Dmitry Torokhov
2009-12-06 11:46 ` Mauro Carvalho Chehab
2009-12-06 17:48 ` Krzysztof Halasa
2009-12-06 17:52 ` Jon Smirl
2009-12-06 20:34 ` Krzysztof Halasa
2009-12-06 21:23 ` Jon Smirl
2009-12-07 23:44 ` Mauro Carvalho Chehab
2009-12-08 0:28 ` Jon Smirl
2009-12-08 11:17 ` Mauro Carvalho Chehab
2009-12-08 13:34 ` Jon Smirl
2009-12-08 14:56 ` Mauro Carvalho Chehab
2009-12-08 22:25 ` Christoph Bartelmus
2009-12-08 17:04 ` Dmitry Torokhov
2009-12-08 13:54 ` Krzysztof Halasa
2009-12-08 4:23 ` Dmitry Torokhov
2009-12-08 11:58 ` Mauro Carvalho Chehab
2009-12-08 14:01 ` Krzysztof Halasa
2009-12-08 14:13 ` Mauro Carvalho Chehab
2009-12-08 15:26 ` Krzysztof Halasa
2009-12-08 15:41 ` Mauro Carvalho Chehab
2009-12-08 17:12 ` Dmitry Torokhov
2009-12-08 13:57 ` Krzysztof Halasa
2009-12-08 17:25 ` Dmitry Torokhov
2009-12-08 13:52 ` Krzysztof Halasa
2009-12-08 14:07 ` Mauro Carvalho Chehab
2009-12-08 14:51 ` Jon Smirl
2009-12-08 15:29 ` Krzysztof Halasa
2009-12-08 15:49 ` Mauro Carvalho Chehab
2009-12-08 16:26 ` Jon Smirl
2009-12-08 4:10 ` Andy Walls
2009-12-08 22:30 ` Christoph Bartelmus
2009-12-09 2:21 ` Andy Walls
2009-12-07 18:41 ` Dmitry Torokhov
2009-12-07 20:08 ` Krzysztof Halasa
2009-12-07 21:38 ` Dmitry Torokhov
2009-12-08 15:24 ` Krzysztof Halasa
2009-12-08 0:44 ` Jon Smirl
2009-12-08 11:23 ` Mauro Carvalho Chehab
2009-12-13 12:14 ` Mauro Carvalho Chehab
2009-12-15 11:50 ` Pavel Machek
2009-12-15 13:33 ` Mauro Carvalho Chehab
2009-12-15 13:43 ` Jon Smirl
2009-12-15 14:19 ` Mauro Carvalho Chehab
2009-12-15 19:58 ` Pavel Machek
2009-12-15 20:14 ` Jon Smirl
2009-12-15 20:19 ` Pavel Machek
2009-12-15 20:29 ` Jon Smirl
2009-12-15 20:33 ` Pavel Machek
2009-12-15 20:45 ` Jon Smirl
2009-12-15 21:05 ` Pavel Machek
2009-12-15 21:38 ` Jon Smirl
2010-03-25 14:42 ` Mauro Carvalho Chehab
2010-03-25 18:32 ` Pavel Machek
2010-03-25 19:00 ` Mauro Carvalho Chehab
2010-03-26 11:04 ` David Härdeman
2010-03-26 11:27 ` David Härdeman
2010-03-26 14:40 ` Mauro Carvalho Chehab
2010-03-26 16:01 ` Dmitry Torokhov
2010-03-26 17:22 ` Mauro Carvalho Chehab
2010-03-26 19:07 ` David Härdeman
2010-03-26 22:37 ` Jon Smirl
2010-03-27 8:27 ` David Härdeman
2010-03-28 23:22 ` Mauro Carvalho Chehab
2010-03-29 0:51 ` Mauro Carvalho Chehab
2010-03-30 11:01 ` David Härdeman
2010-03-31 6:01 ` Mauro Carvalho Chehab
2010-03-30 11:09 ` David Härdeman
2010-03-30 12:43 ` Mauro Carvalho Chehab
2010-03-26 12:23 ` David Härdeman
2010-03-26 15:17 ` Mauro Carvalho Chehab
2010-03-26 19:21 ` David Härdeman
2010-03-27 5:56 ` Pavel Machek
2010-04-09 7:21 ` James Hogan
2010-04-09 10:50 ` Andy Walls
2010-04-09 12:58 ` Jarod Wilson
2010-04-09 13:02 ` Jon Smirl
2010-04-09 13:01 ` Mauro Carvalho Chehab
2010-04-09 21:42 ` James Hogan
2010-04-09 21:55 ` Devin Heitmueller
2010-04-09 22:14 ` Andy Walls
2010-04-09 23:32 ` Mauro Carvalho Chehab
2010-04-10 0:18 ` Jon Smirl
2010-04-10 1:01 ` Mauro Carvalho Chehab
2010-04-10 0:38 ` hermann pitton
2009-12-07 15:36 ` Mauro Carvalho Chehab
2009-12-06 11:59 ` Christoph Bartelmus
2009-12-15 11:47 ` Pavel Machek
2009-12-06 12:12 ` Christoph Bartelmus
2009-12-06 16:38 ` Jon Smirl
2009-12-06 20:22 ` Krzysztof Halasa
2009-12-07 23:50 ` Mauro Carvalho Chehab
2009-12-03 23:45 ` Andy Walls
2009-12-03 17:47 ` Krzysztof Halasa
2009-11-27 21:49 ` Stefan Richter
2009-11-28 1:08 ` Maxim Levitsky
2009-11-28 11:20 ` Krzysztof Halasa
2009-11-28 14:42 ` Maxim Levitsky
2009-11-28 15:25 ` Krzysztof Halasa
2009-11-28 15:35 ` Maxim Levitsky
2009-11-28 15:44 ` Krzysztof Halasa
2009-11-28 16:26 ` Maxim Levitsky
2009-11-28 16:44 ` Krzysztof Halasa
2009-11-28 16:47 ` Christoph Bartelmus
2009-11-28 17:06 ` Jon Smirl
2009-11-28 17:35 ` Krzysztof Halasa
2009-11-28 17:37 ` Jon Smirl
2009-11-28 17:40 ` Krzysztof Halasa
2009-11-28 23:26 ` Andy Walls
2009-11-29 4:58 ` Dmitry Torokhov
2009-11-29 20:27 ` Krzysztof Halasa
2009-11-29 20:44 ` Jon Smirl
2009-11-29 21:29 ` Dmitry Torokhov
2009-11-29 21:47 ` Jon Smirl
2009-11-29 22:48 ` Dmitry Torokhov
2009-11-29 21:31 ` Dmitry Torokhov
2009-11-30 4:50 ` Jarod Wilson
2009-11-30 0:48 ` Andy Walls
2009-12-01 10:46 ` Gerd Hoffmann
2009-12-01 11:49 ` Andy Walls
2009-12-01 14:02 ` Gerd Hoffmann
2009-12-01 14:18 ` Mauro Carvalho Chehab
2009-11-30 17:45 ` Lennart Sorensen
2009-11-29 4:32 ` Andy Walls
2009-11-29 4:50 ` Dmitry Torokhov
2009-11-29 12:40 ` Alan Cox
2009-11-29 17:28 ` Maxim Levitsky
2009-11-29 17:49 ` Ray Lee
2009-11-29 18:13 ` Alan Cox
2009-11-29 18:52 ` Ray Lee
2009-11-29 19:04 ` Alan Cox
2009-11-29 19:16 ` Jon Smirl
2009-11-29 19:29 ` Alan Cox
2009-11-29 19:49 ` Christoph Bartelmus
2009-11-30 0:05 ` Andy Walls
2009-11-29 23:35 ` Andy Walls
2009-11-30 2:15 ` Ray Lee
2009-11-30 9:58 ` Artur Skawina
2009-11-30 11:56 ` Mauro Carvalho Chehab
2009-11-30 12:57 ` Andy Walls
2009-11-30 13:23 ` Jon Smirl
2009-11-30 13:24 ` Mauro Carvalho Chehab
2009-11-30 16:14 ` kevin granade
2009-11-30 17:33 ` Mauro Carvalho Chehab
2009-11-30 18:02 ` Dmitry Torokhov
2009-11-30 18:27 ` Mauro Carvalho Chehab
2009-11-30 19:07 ` Dmitry Torokhov
2009-11-30 20:07 ` Krzysztof Halasa
2009-11-30 13:43 ` Maxim Levitsky
2009-11-30 14:01 ` Jon Smirl
2009-11-30 15:04 ` Maxim Levitsky
2009-11-30 16:19 ` Mauro Carvalho Chehab
2009-11-30 20:03 ` Krzysztof Halasa
2009-11-29 18:19 ` Jon Smirl
2009-11-29 19:00 ` Alan Cox
2009-11-30 9:57 ` Mauro Carvalho Chehab
2009-11-28 18:17 ` Stefan Richter
2009-11-28 18:58 ` Jon Smirl
2009-11-28 19:45 ` Stefan Richter
2009-11-28 20:08 ` Jon Smirl
2009-11-28 20:21 ` Krzysztof Halasa
2009-12-12 19:33 ` Pavel Machek
2009-11-28 20:29 ` Stefan Richter
2009-11-28 20:34 ` Stefan Richter
2009-11-28 20:46 ` Jon Smirl
2009-11-28 21:46 ` Stefan Richter
2009-11-28 22:10 ` Jon Smirl
2009-11-28 22:18 ` Jon Smirl
2009-11-29 4:59 ` Dmitry Torokhov
2009-11-29 16:01 ` Mauro Carvalho Chehab
2009-11-29 16:18 ` Mauro Carvalho Chehab
2009-11-29 11:24 ` Christoph Bartelmus
2009-11-29 16:01 ` Mauro Carvalho Chehab
2009-11-28 19:55 ` Krzysztof Halasa
2009-11-28 20:14 ` Jon Smirl
2009-11-28 20:29 ` Krzysztof Halasa
2009-11-28 17:21 ` Krzysztof Halasa
2009-11-29 11:07 ` Christoph Bartelmus
2009-11-28 16:45 ` Jon Smirl
2009-11-28 18:45 ` Maxim Levitsky
2009-11-28 18:56 ` Jon Smirl
2009-11-28 19:16 ` Maxim Levitsky
2009-11-28 19:30 ` Stefan Richter
2009-11-28 19:32 ` Jon Smirl
2009-11-28 19:48 ` Stefan Richter
2009-11-29 2:47 ` Mike Lampard
2009-11-29 4:55 ` Dmitry Torokhov
2009-11-29 5:31 ` Mike Lampard
2009-11-29 7:14 ` Dmitry Torokhov
2009-11-29 21:59 ` Artur Skawina
2009-11-30 12:13 ` Mauro Carvalho Chehab
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=9e4733910911270949s3e8b5ba9qfe5025d490ad0cfa@mail.gmail.com \
--to=jonsmirl@gmail.com \
--cc=awalls@radix.net \
--cc=christoph@bartelmus.de \
--cc=dmitry.torokhov@gmail.com \
--cc=j@jannau.net \
--cc=jarod@redhat.com \
--cc=jarod@wilsonet.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@bartelmus.de \
--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).