Re: [PATCH 2/3] i2c: davinci: Refactor i2c_davinci_wait_bus_not_busy()

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

 



Hi!

On 11/03/15 19:35, ext Grygorii.Strashko@xxxxxxxxxx wrote:
>> +    if (i2c_davinci_wait_status_change(dev, DAVINCI_I2C_STR_BB, 0)) {
>> +        dev_warn(dev->dev, "timeout waiting for bus ready\n");
>> +        davinci_i2c_recover_bus(dev);
>> +        i2c_davinci_init(dev);
>> +        /*
>> +         * the bus should not be busy after init, otherwise something
>> +         * is badly broken
>> +         */
> 
> I think you should recheck BB and return error if it's still detected.

But after re-reading the datasheet, I must conclude, this is almost not possible.
It will be a dead code. Reset will clear BB anyway and the only possibility to see
BB set to 1 here is when another master transmits right after our reset. We cannot
guarantee that we will always catch this here, so this must be any way handled over
AL interrupt.

-- 
Best regards,
Alexander Sverdlin.

--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux