linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jarod Wilson <jarod@wilsonet.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: Mauro Carvalho Chehab <mchehab@redhat.com>,
	Christoph Bartelmus <lirc@bartelmus.de>,
	awalls@radix.net, dmitry.torokhov@gmail.com, j@jannau.net,
	jarod@redhat.com, jonsmirl@gmail.com, khc@pm.waw.pl,
	linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-media@vger.kernel.org, superm1@ubuntu.com
Subject: Re: [RFC] What are the goals for the architecture of an in-kernel IR  system?
Date: Tue, 1 Dec 2009 09:32:42 -0500	[thread overview]
Message-ID: <119343FC-A4FF-456A-8709-36ED941AC9C3@wilsonet.com> (raw)
In-Reply-To: <4B14E747.9060208@redhat.com>

On Dec 1, 2009, at 4:52 AM, Gerd Hoffmann wrote:

> On 11/30/09 13:34, Mauro Carvalho Chehab wrote:
>> Christoph Bartelmus wrote:
>>> Hi Mauro,
>>> 
>>> I just don't want to change a working interface just because it could be
>>> also implemented in a different way, but having no other visible advantage
>>> than using more recent kernel features.
>> 
>> I agree. The main reasons to review the interface is:
>> 	1) to avoid any overlaps (if are there any) with the evdev interface;
> 
> Use lirc for raw samples.
> Use evdev for decoded data.

This is the approach I'm pretty well settled on wanting to take myself.

> Hardware/drivers which can handle both can support both interfaces.

Exactly.

> IMHO it makes no sense at all to squeeze raw samples through the input layer.  It looks more like a serial line than a input device.  In fact you can homebrew a receiver and connect it to the serial port, which was quite common in pre-usb-ir-receiver times.
> 
>> 	2) to have it stable enough to be used, without changes, for a long
>> 	   time.
> 
> It isn't like lirc is a new interface.  It has been used in practice for years.  I don't think API stability is a problem here.

Yeah, in the ~3 years I've been maintaining lirc patches for the Fedora kernels, only once has something happened where new userspace could no longer talk to old kernelspace. The majority of the work has been keeping things running as kernel interfaces change -- the 2.6.31 i2c changes are still biting us, as some capture card devices lagged behind a bit on converting to the new i2c scheme, making it impossible for lirc_i2c and/or lirc_zilog to bind (and ir-kbd-i2c, for that matter).

>> True, but even if we want to merge lirc drivers "as-is", the drivers will
>> still need changes, due to kernel CodingStyle, due to the usage of some API's
>> that may be deprecated, due to some breakage with non-Intel architectures, due
>> to some bugs that kernel hackers may discover, etc.
> 
> I assumed this did happen in already in preparation of this submission?

Yes. There may still be a bit of work to do here, but there was a crew of us about a year, year and a half ago, that did a major sweep through all the lirc drivers, reformatting things so that we were at least mostly checkpatch-clean. The original lirc patches I put into the Fedora Core 6 kernel had several thousand lines of warnings and errors, while with the current lirc patches in Fedora 12, I get:

total: 1 errors, 12 warnings, 15987 lines checked

The error is new, hadn't seen that one before, going to fix it now... :) The warnings are almost all the same thing, "WARNING: struct file_operations should normally be const", need to fix that too, though we actually do edit the lirc_fops on a per-device basis right now, so they can't be const...

Okay, the error and one of the warnings are gone from my local tree, now its all just the above.

But yeah, for the most part, I think the coding style and formatting of the lirc drivers *does* look like kernel code these days, minor fixages suggested in Mauro's review aside. I submitted only a 3-part series (lirc_dev, lirc_mceusb and lirc_imon) to keep from overwhelming anyone (myself included) with too much code at once, and went with the two device drivers that I've personally done the most work on and have several devices driven by (which includes the IR parts I've been using in my "production" MythTV setup for years now).

-- 
Jarod Wilson
jarod@wilsonet.com




  parent reply	other threads:[~2009-12-01 14:32 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
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 [this message]
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=119343FC-A4FF-456A-8709-36ED941AC9C3@wilsonet.com \
    --to=jarod@wilsonet.com \
    --cc=awalls@radix.net \
    --cc=dmitry.torokhov@gmail.com \
    --cc=j@jannau.net \
    --cc=jarod@redhat.com \
    --cc=jonsmirl@gmail.com \
    --cc=khc@pm.waw.pl \
    --cc=kraxel@redhat.com \
    --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).