[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-id: <11281802.80061366444168759.JavaMail.weblogic@epml02>
Date: Sat, 20 Apr 2013 07:49:29 +0000 (GMT)
From: EUNBONG SONG <eunb.song@...sung.com>
To: Wolfram Sang <wsa@...-dreams.de>
Cc: "linux-i2c@...r.kernel.org" <linux-i2c@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: Re: Re: [PATCH] I2C: Change the value of octeon i2c adapter
timeout value
>
> 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");
}
Powered by blists - more mailing lists