I2C: Change the value of octeon i2c adapter timeout value
Quoted 5 lines
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");
}
Wolfram Sang
AppliedHi,
what mail client do you use? It seems to break message threading on my side :(
Quoted 7 lines
Quoted 3 lines
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.
Well, OK, I don't mind. We can increase it later if needed.
Applied to for-next, thanks! Please have a look later how I changed your commit messages to see the preferred style.