On Tue, Sep 28, 2010 at 2:46 PM, Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> wrote: > By default, tda18271 tries to optimize I2C bus by updating all registers > at the same time. Unfortunately, some devices doesn't support it. > > The current logic has a problem when small_i2c is equal to 8, since there > are some transfers using 11 + 1 bytes. > > Fix the problem by enforcing the max size at the right place, and allows > reducing it to max = 3 + 1. > > Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> This looks to me as if it is working around a problem on the i2c master. I believe that a fix like this really belongs in the i2c master driver, it should be able to break the i2c transactions down into transactions that the i2c master can handle. I wouldn't want to merge this without a better explanation of why it is necessary in the tda18271 driver. It seems to be a band-aid to cover up a problem in the i2c master device driver code. Regards, Mike Krufky -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html