public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Michael Hunold <hunold@convergence.de>
To: Christoph Hellwig <hch@infradead.org>
Cc: LKML <linux-kernel@vger.kernel.org>, Greg KH <greg@kroah.com>
Subject: Re: i2c-yosemite
Date: Sun, 22 Feb 2004 14:43:05 +0100	[thread overview]
Message-ID: <4038B1E9.60601@convergence.de> (raw)
In-Reply-To: <20040222103036.A29210@infradead.org>

Hello,

On 22.02.2004 11:30, Christoph Hellwig wrote:
> On Sun, Feb 22, 2004 at 10:41:06AM +0100, Jean Delvare wrote:
> 
>>If everyone reimplements what already exists, the kernel is likely to go
>>bigger with no benefit. Also, you won't be able to use all user-space
>>tools that already exist,

Agreed.

>>Please explain to us why you cannot/don't want to use the existing i2c
>>subsystem.

> Yupp.  While we're at it what should we do with the i2c reimplementations
> in alsa and dvb?

The current dvb "i2c" implementation is only about 10k straight-forward 
code. Besides the name, there isn't much code duplication, because 
essential stuff (for example struct i2c_msg) is already hijacked from i2c.h.

The problem with dvb i2c is, that the very first engineers didn't think 
of the bus as a general purpose bus, but more like "hey, we know what 
we're doing".

In former times when DVB wasn't in the kernel, we tried to use the 
in-kernel i2c subsystem. One problem was, that all kind of drivers tried 
to probe the DVB i2c busses, which really confused some i2c adapters. I 
admit that this has been solved lately with the newly introduced "usage 
ids".

There isn't much code duplication for the i2c helper chipsets drivers 
either, because it's very unlikely that you'll find them outside 
so-called DVB frontends.

The biggest problem is, however, that some of the used chipsets (mainly 
the demodulators) encapsulate all i2c traffic that has to go "beyond" 
them (mainly to the tuners). They have a thing called "i2c repeater" 
which has to be enabled and disabled by special i2c commands, sometimes 
in a magic fashion.

This is possible if you know exactly what i2c mesages you are sending, 
but the guy who wrote the code told me that he wasn't able to get it 
fully running with the kernel i2c system.

This might have changed in the past, but it hasn't been checked lately.

For the long term (ie. 2.7 and 2.8), we're planning to use kernel i2c 
again, but currently nobody dares to touch the code because it's running 
very stable.

CU
Michael.

  reply	other threads:[~2004-02-22 13:43 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-22  9:41 i2c-yosemite Jean Delvare
2004-02-22 10:30 ` i2c-yosemite Christoph Hellwig
2004-02-22 13:43   ` Michael Hunold [this message]
  -- strict thread matches above, loose matches on Subject: below --
2004-02-23  4:12 i2c-yosemite Manish Lachwani
2004-02-23 19:24 ` i2c-yosemite Jean Delvare

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=4038B1E9.60601@convergence.de \
    --to=hunold@convergence.de \
    --cc=greg@kroah.com \
    --cc=hch@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    /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