On Thu, Jun 14, 2012 at 3:05 PM, Sasikanth babu <sasikanth.v19@xxxxxxxxx> wrote:
ThanksOn Thu, Jun 14, 2012 at 12:37 AM, Guenter Roeck <guenter.roeck@xxxxxxxxxxxx> wrote:
I definitely agree, but that smells like large company process to me.On Wed, Jun 13, 2012 at 01:59:50PM -0400, Jean Delvare wrote:
> On Wed, 13 Jun 2012 21:52:02 +0530, Sasikanth babu wrote:
> > Yes, as you had mentioned we just backported I2c mux support.
> > I planning to use
> > linux-2.6.39.4.tar.bz2<http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.39.4.tar.bz2>kernel
> > (Since I cant go to 3.x kernels for now).
> > Is that version is fine with I2c mux devices or do I have to go with 3.x
> > kernels.?
>
> 2.6.39.4 should work fine with regards to i2c muxing, however this
> branch is already out of maintenance while the 3.0 branch is a longterm
> branch so it will be maintained for some more time (not sure exactly
> how long though.) So if 3.0 is an option, you should consider it seriously.
>
Sasikanth may not have much of a choice.
Guenter
Sorry guys for bothering you again
I was running 2.6.39.4 kernel now. Software reboot always creating problems with LM75 device and saying address
is busy but with hardware reboot It works fine (since all the power to board gets resets)
Added a error message on failure of i2c_check_addr_busy.
/* Check for address business */
status = i2c_check_addr_busy(adap, client->addr);
if (status) {
dev_err(&adap->dev, "Address Busy to register i2c client %s at 0x%02x "
"(%d)\n", client->name, client->addr, status);
goto out_err;
}
i2c i2c-3: Address Busy to register i2c client lm75 at 0x4c (-16)
i2c i2c-3: Failed to register i2c client lm75 at 0x4c (-16)
i2c i2c-3: Address Busy to register i2c client lm75 at 0x4b (-16)
i2c i2c-3: Failed to register i2c client lm75 at 0x4b (-16)
Sasi
After making the following changes, It is working fine on soft reboot too.
diff -urpN orig/linux-2.6.39.4/drivers/i2c/muxes/pca954x.c linux-2.6.39.4/drivers/i2c/muxes/pca954x.c
--- orig/linux-2.6.39.4/drivers/i2c/muxes/pca954x.c 2011-08-03 15:43:28.000000000 -0400
+++ linux-2.6.39.4/drivers/i2c/muxes/pca954x.c 2012-06-14 08:37:52.572107218 -0400
@@ -174,6 +174,7 @@ static int pca954x_deselect_mux(struct i
struct pca954x *data = "">
/* Deselect active channel */
+ printk (KERN_INFO"pca954x_deselect_mux: called ...\n");
data->last_chan = 0;
return pca954x_reg_write(adap, client, data->last_chan);
}
@@ -228,8 +229,7 @@ static int pca954x_probe(struct i2c_clie
data->virt_adaps[num] =
i2c_add_mux_adapter(adap, client,
force, num, pca954x_select_chan,
- (pdata && pdata->modes[num].deselect_on_exit)
- ? pca954x_deselect_mux : NULL);
+ pca954x_deselect_mux);
if (data->virt_adaps[num] == NULL) {
ret = -ENODEV;
No one is setting the "deselect_on_exit" for pca954x devices (verified in 3.5.0-rc2 too). Does the pca954x_deselect_mux not required for PCA mux devices for every bus transfer?.
Thanks
Sasi
_______________________________________________ lm-sensors mailing list lm-sensors@xxxxxxxxxxxxxx http://lists.lm-sensors.org/mailman/listinfo/lm-sensors