diff options
author | Shubhrajyoti D <shubhrajyoti@ti.com> | 2012-11-15 03:49:21 -0500 |
---|---|---|
committer | Wolfram Sang <w.sang@pengutronix.de> | 2012-11-16 09:18:52 -0500 |
commit | 1ab3604595af478e9feea430318c22899015550c (patch) | |
tree | dfe185138a1f6be908a5b12fa1d828041cf7934b /drivers/i2c/busses | |
parent | 06e9eff129ec4251e5335ecaebe1aabba78091b6 (diff) |
i2c: omap: Move the remove constraint
Currently we just queue the transfer and release the
qos constraints, however we do not wait for the transfer
to complete to release the constraint. Move the remove
constraint after the bus busy as we are sure that the
transfers are completed by then.
Acked-by: Jean Pihet <j-pihet@ti.com>
Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com>
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Diffstat (limited to 'drivers/i2c/busses')
-rw-r--r-- | drivers/i2c/busses/i2c-omap.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c index 49b12fb00c90..248280136668 100644 --- a/drivers/i2c/busses/i2c-omap.c +++ b/drivers/i2c/busses/i2c-omap.c | |||
@@ -654,13 +654,14 @@ omap_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) | |||
654 | break; | 654 | break; |
655 | } | 655 | } |
656 | 656 | ||
657 | if (dev->set_mpu_wkup_lat != NULL) | ||
658 | dev->set_mpu_wkup_lat(dev->dev, -1); | ||
659 | |||
660 | if (r == 0) | 657 | if (r == 0) |
661 | r = num; | 658 | r = num; |
662 | 659 | ||
663 | omap_i2c_wait_for_bb(dev); | 660 | omap_i2c_wait_for_bb(dev); |
661 | |||
662 | if (dev->set_mpu_wkup_lat != NULL) | ||
663 | dev->set_mpu_wkup_lat(dev->dev, -1); | ||
664 | |||
664 | out: | 665 | out: |
665 | pm_runtime_mark_last_busy(dev->dev); | 666 | pm_runtime_mark_last_busy(dev->dev); |
666 | pm_runtime_put_autosuspend(dev->dev); | 667 | pm_runtime_put_autosuspend(dev->dev); |