From: Jean Delvare <khali-PUYAD+kWke1g9hUCZPvPmw@public.gmane.org>
To: Rodolfo Giometti <giometti-AVVDYK/kqiJWk0Htik3J/w@public.gmane.org>
Cc: i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org,
Kumar Gala
<galak-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org>,
Ben Dooks <ben-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org>
Subject: Re: [PATCH] i2c: virtual i2c adapter support.
Date: Mon, 23 Jun 2008 09:14:06 +0200 [thread overview]
Message-ID: <20080623091406.2a68e9d1@hyperion.delvare> (raw)
In-Reply-To: <20080622085206.GM10695-AVVDYK/kqiJWk0Htik3J/w@public.gmane.org>
Hi Rodolfo,
On Sun, 22 Jun 2008 10:52:06 +0200, Rodolfo Giometti wrote:
> On Sun, Jun 22, 2008 at 10:37:16AM +0200, Peter Korsgaard wrote:
> > >>>>> "Rodolfo" == Rodolfo Giometti <giometti-k2GhghHVRtY@public.gmane.org> writes:
> >
> > Hi,
> >
> > Rodolfo> +
> > Rodolfo> +struct i2c_adapter *i2c_add_virt_adapter(struct i2c_adapter *parent,
> > Rodolfo> + struct i2c_client *client,
> > Rodolfo> + u32 force_nr, u32 mux_val,
> > Rodolfo> + int (*select_cb) (struct i2c_adapter *,
> > Rodolfo> + struct i2c_client *, u32),
> > Rodolfo> + int (*deselect_cb) (struct i2c_adapter *,
> > Rodolfo> + struct i2c_client *, u32))
> > Rodolfo> +{
> >
> > How about changing the struct i2c_client to an anonymous void *data
> > instead so it can be used for systems where the multiplexing hardware
> > isn't a i2c device? E.G. I have a driver (currently not in mainline)
> > for a I2C multiplexer implemented in a FPGA together with the
> > opencores I2C controller:
> > [snip]
> > It would be nice to be able to use the i2c-virtual stuff for it.
>
> Mmm... I suppose is not so easy as we wish since there are several
> references to the i2c parent struct into the code.
>
> I suppose you can get better result if you define your i2c multiplexer
> as a dummy i2c device. The you can force it to be connected with a
> real i2c parent by using the i2c_register_board_info() function.
Don't even think about it. We've done dummy i2c devices before and it
took me 3 years to clean up the mess. Not again, please.
Peter is totally right, there's no reason why I2C multiplexers would
always be I2C devices themselves (and when they are, they do not have
to live on the bus they are multiplexing, even though this is the most
frequent case). That's only one of the possible cases. The core i2c
multiplexing code shouldn't assume anything about the nature of the
multiplexer, that's something for the actual implementation of specific
multiplexer drivers to deal with.
Thanks,
--
Jean Delvare
_______________________________________________
i2c mailing list
i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org
http://lists.lm-sensors.org/mailman/listinfo/i2c
prev parent reply other threads:[~2008-06-23 7:14 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-19 17:14 [PATCH v2] i2c: virtual i2c adapter support Rodolfo Giometti
[not found] ` <1213895701-9872-1-git-send-email-giometti-k2GhghHVRtY@public.gmane.org>
2008-06-19 17:14 ` [PATCH] " Rodolfo Giometti
[not found] ` <1213895701-9872-2-git-send-email-giometti-k2GhghHVRtY@public.gmane.org>
2008-06-19 17:15 ` [PATCH] i2c: multiplexer i2c devices Rodolfo Giometti
[not found] ` <1213895701-9872-3-git-send-email-giometti-k2GhghHVRtY@public.gmane.org>
2008-06-19 17:15 ` [PATCH] i2c: driver for PCA954x I2C multiplexer series Rodolfo Giometti
2008-06-22 8:37 ` [PATCH] i2c: virtual i2c adapter support Peter Korsgaard
[not found] ` <87fxr5sw5f.fsf-uXGAPMMVk8amE9MCos8gUmSdvHPH+/yF@public.gmane.org>
2008-06-22 8:52 ` Rodolfo Giometti
[not found] ` <20080622085206.GM10695-AVVDYK/kqiJWk0Htik3J/w@public.gmane.org>
2008-06-22 9:15 ` Peter Korsgaard
[not found] ` <87bq1tsue5.fsf-uXGAPMMVk8amE9MCos8gUmSdvHPH+/yF@public.gmane.org>
2008-06-22 9:39 ` Rodolfo Giometti
[not found] ` <20080622093939.GO10695-AVVDYK/kqiJWk0Htik3J/w@public.gmane.org>
2008-06-22 10:53 ` Peter Korsgaard
[not found] ` <8763s1spuw.fsf-uXGAPMMVk8amE9MCos8gUmSdvHPH+/yF@public.gmane.org>
2008-06-22 12:50 ` Rodolfo Giometti
[not found] ` <20080622125010.GP10695-AVVDYK/kqiJWk0Htik3J/w@public.gmane.org>
2008-06-22 19:48 ` Peter Korsgaard
[not found] ` <87hcblqmi0.fsf-uXGAPMMVk8amE9MCos8gUmSdvHPH+/yF@public.gmane.org>
2008-06-23 7:26 ` Jean Delvare
[not found] ` <20080623092658.75bddce4-ig7AzVSIIG7kN2dkZ6Wm7A@public.gmane.org>
2008-06-23 7:51 ` Peter Korsgaard
[not found] ` <8763s0pp0r.fsf-uXGAPMMVk8amE9MCos8gUmSdvHPH+/yF@public.gmane.org>
2008-08-21 8:45 ` Rodolfo Giometti
2008-06-23 7:21 ` Jean Delvare
2008-06-23 7:14 ` Jean Delvare [this message]
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=20080623091406.2a68e9d1@hyperion.delvare \
--to=khali-puyad+kwke1g9huczpvpmw@public.gmane.org \
--cc=ben-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org \
--cc=galak-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org \
--cc=giometti-AVVDYK/kqiJWk0Htik3J/w@public.gmane.org \
--cc=i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.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