Re: Re: Re: [PATCH] I2C: Change the value of octeon i2c adaptertimeout value

From: EUNBONG SONG
Date: Sat Apr 20 2013 - 03:50:29 EST



>
> Have you been writing to EEPROMS? Their erase/write cycle might be
> longer. But I am not forcing you to change the value, just giving some
> suggestions.

My board has i2c mux, temp sensor, eeprom. And I added some debugging code for measuring i2c response time as below and
run i2c operation for each device.
The maximum respeonse time was 500usec(under 1msec). So 20 msec is enough for adapter timeout.
Thanks.
static int octeon_i2c_wait(struct octeon_i2c *i2c)
{
int result;
+ struct timeval start, end;

octeon_i2c_int_enable(i2c);

+ do_gettimeofday(&start);
result = wait_event_timeout(i2c->queue,
octeon_i2c_test_iflg(i2c),
i2c->adap.timeout);

+ do_gettimeofday(&end);

+ if(end.tv_usec < start.tv_usec){
+ end.tv_usec += 1000000;
+ end.tv_sec--;
+ }

+ if(result > 0)
+ printk("octeon_i2c_wait elapse time: %ld msecs\n", (end.tv_sec - start.tv_sec)*1000000 + (end.tv_usec - start.tv_usec));
+ else
+ printk("octeon_i2c_wait fail!!\n");
}N떑꿩ìr¸›y鉉싕b²XФ푤vØ^–)頻{.nÇ+돴¥Š{±묎çzX㎍썳變}©옽Æ zÚ&j:+v돣¾«묎çzZ+€Ê+zf"·hš닱~넮녬iÿ鎬z¹®wⅱ¸?솳鈺Ú&¢)刪f뷌^j푹y§m끷@A«a뛴ÿ 0띠h®å’i