Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1463840

Re: [PATCH v3 1/3] i2c: designware: wait for disable/enable only if necessary

From Jarkko Nikula <jarkko.nikula@linux.intel.com>
Newsgroups linux.kernel
Subject Re: [PATCH v3 1/3] i2c: designware: wait for disable/enable only if necessary
Date 2016-08-16 16:10 +0200
Message-ID <s6Ne3-46v-59@gated-at.bofh.it> (permalink)
References <s01F7-3X8-7@gated-at.bofh.it> <s01F7-3X8-21@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Hi, + Wolfram

On 07/29/2016 01:03 AM, Lucas De Marchi wrote:
> From: José Roberto de Souza <jose.souza@intel.com>
>
> If we aren't going to continue using the controller we can just disable
> it instead of waiting for it to complete. The biggest improvement here
> is when a I2C transaction is completed and it doesn't block until
> the adapter is disabled. When a new transfer is needed we will disable
> and wait for its completion.
>
> This way the adapter will continue changing its state in parallel to the
> execution of the thread that requested the I2C transaction saving most
> of the time 25~250 usec per I2C transaction.
>
> A simple program doing a register read (1 byte write, 1 byte read)
> alternating on 2 different slaves repeated 25k times for each and
> measurements taken 4 times we get:
>
> perf stat -r4 chrt -f 10 ./i2c-test /dev/i2c-1 25000 0x40 0x6 0x1e 0x00
>
> Before:
> 	30.879317977 seconds time elapsed                 ( +- 14.83% )
> After:
> 	8.638705161 seconds time elapsed                  ( +-  5.90% )
>
> Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
> Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
> ---
>  drivers/i2c/busses/i2c-designware-core.c | 13 +++++++++----
>  1 file changed, 9 insertions(+), 4 deletions(-)
>
Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

Re: [PATCH v3 1/3] i2c: designware: wait for disable/enable only if  necessary Jarkko Nikula <jarkko.nikula@linux.intel.com> - 2016-08-16 16:10 +0200

csiph-web