i2c: davinci: don't use interruptible completion
authorMike Looijmans <mike.looijmans@topic.nl>
Fri, 14 Mar 2014 06:42:28 +0000 (07:42 +0100)
committerWolfram Sang <wsa@the-dreams.de>
Mon, 10 Nov 2014 08:35:01 +0000 (09:35 +0100)
commit900ef800a2a4c08aa28af4785a5b2d5d7e199103
tree0f53de670e976570587d24c653ecdb0d571e04d7
parent36765293cd50bd8dffd5f3225376789cacddfb00
i2c: davinci: don't use interruptible completion

When a signal is caught while the i2c-davinci bus driver is
transferring, the driver just "abandons" the transfer and leaves the
controller to fend for itself. The next I2C transaction will find the
controller in an undefined state and often results in a stream of
"initiating i2c bus recovery" messages until the controller arrives in a
defined state. This behaviour also sends out "half" or possibly even
mixed messages to I2C client devices which may put them in an undesired
state as well. So, let's get simply uninterruptible.

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-davinci.c