diff options
author | Arnd Bergmann <arnd@arndb.de> | 2013-04-08 17:46:16 +0200 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2013-04-08 17:46:16 +0200 |
commit | 81211c4cc04ca33f7c3ae10de547113e34d9a59e (patch) | |
tree | 974df8aac30b4dfaa8bd2f8caddb6611bcb19ae4 /drivers/misc/mei/init.c | |
parent | b62d7946b2dd04e07734313a450cb0a8b440f206 (diff) | |
parent | 55985e15b80beb339d3e332f00a26003deff14e6 (diff) |
Merge tag 'mxs-fixes-3.9-4' of git://git.linaro.org/people/shawnguo/linux-2.6 into fixes
From Shawn Guo <shawn.guo@linaro.org>:
The mxs fixes for 3.9, take 4:
- A couple mxs boards that run I2C at 400 kHz experience some unstable
issue occasionally. Slow down the clock speed to have I2C work
reliably.
* tag 'mxs-fixes-3.9-4' of git://git.linaro.org/people/shawnguo/linux-2.6:
ARM: mxs: Slow down the I2C clock speed
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'drivers/misc/mei/init.c')
-rw-r--r-- | drivers/misc/mei/init.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/misc/mei/init.c b/drivers/misc/mei/init.c index 6ec530168af..356179991a2 100644 --- a/drivers/misc/mei/init.c +++ b/drivers/misc/mei/init.c @@ -183,6 +183,24 @@ void mei_reset(struct mei_device *dev, int interrupts_enabled) mei_cl_all_write_clear(dev); } +void mei_stop(struct mei_device *dev) +{ + dev_dbg(&dev->pdev->dev, "stopping the device.\n"); + + mutex_lock(&dev->device_lock); + + cancel_delayed_work(&dev->timer_work); + + mei_wd_stop(dev); + + dev->dev_state = MEI_DEV_POWER_DOWN; + mei_reset(dev, 0); + + mutex_unlock(&dev->device_lock); + + flush_scheduled_work(); +} + |