[PATCH] - i2c virtual adapter driver for multiplexed busses

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



excellent. here's some first comments.
Thanks for doing some good documentation.

- I think i2c-virtual is really the algorithm driver
(i2c-algo-virtual?).
  It contains a common algorithm for virtual drivers.

- Therefore i2c-virtual_cb is the adapter driver, specific to the
  PCA954x chips (ic2-pca954x?).
  The algo/adapter boundary in the 405 driver you copied may be a little
muddy.
  See i2c-algo-bit and its many adapter drivers in sensors for examples.

- I'd rather not add entries to struct i2c_algorithm, we just went
through that
  hell and are finishing a patch to go to Marcelo. Rather than
xxx_exclusive,
  we could use the (essentially unused) algo_control. i2c-core could
recognize
  that a driver is virtual by adding a functionality entry to identify
that
  it is virtual. If you really want it the way it is we need to put
#ifdefs everywhere
  so we can stay compatible, at least for now...

- If i2c-pca954x also registered as a chip driver (sensors-style)
  (that is, be an i2c client as well) at addresses 0x70-77 then it will
  get called whenever a device is found at that location, it can do
detection
  (if possible -doesn't look like it) and then register the new busses,
and
  everything gets bootstrapped. You'll get called anytime a bus
  is registered. That's better than simply scanning the
  adapters already present at module_init time.

- It's much easier for us if you give us a patch against CVS, or else
patch
  your kernel with our kernel patches first (see home page) and then
give us a patch
  against that kernel. At least for i2c-core.

Brian Kuschak wrote:
> 
> Hi Greg, Mark,
> 
> As described in a previous email to this list, this is
> a patch for simplified access to multiplexed i2c
> busses.  A documentation file is included, as well as
> an example (i2c-virtual_cb.c) of how to implement the
> mux-control callbacks.
> 
> Tested on a heavily patched 2.4.19 kernel on embedded
> PowerPC.  However, this patch is against a clean
> kernel.org 2.4.19 tree.  I don't have the bandwidth to
> port this to 2.6.0 right now, but I wanted to make it
> available in case someone else finds it useful.
> 
> Comments/feedback welcome.
> 
> Thanks,
> Brian Kuschak
> 
> __________________________________
> Do you Yahoo!?
> Protect your identity with Yahoo! Mail AddressGuard
> http://antispam.yahoo.com/whatsnewfree
> 
> 
>                                   Name: i2c_virtual.2_4_19.patch
>    i2c_virtual.2_4_19.patch       Type: Plain Text (text/plain)
>                            Description: i2c_virtual.2_4_19.patch



[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux