From: Ulf Hansson Date: Wed, 19 Feb 2014 12:27:47 +0000 (+0100) Subject: i2c: nomadik: Remove busy check for transfers at suspend late X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=624df09f3a20b7073289d7f7d8672734ca1339a9;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git i2c: nomadik: Remove busy check for transfers at suspend late We should never be busy performing transfers at suspend late, thus there are no reason to check for it. Signed-off-by: Ulf Hansson Signed-off-by: Wolfram Sang --- diff --git a/drivers/i2c/busses/i2c-nomadik.c b/drivers/i2c/busses/i2c-nomadik.c index 89f40ea2299d..dfbb800a8a8d 100644 --- a/drivers/i2c/busses/i2c-nomadik.c +++ b/drivers/i2c/busses/i2c-nomadik.c @@ -167,7 +167,6 @@ struct i2c_nmk_client { * @stop: stop condition. * @xfer_complete: acknowledge completion for a I2C message. * @result: controller propogated result. - * @busy: Busy doing transfer. */ struct nmk_i2c_dev { struct i2c_vendor_data *vendor; @@ -185,7 +184,6 @@ struct nmk_i2c_dev { int stop; struct completion xfer_complete; int result; - bool busy; }; /* controller's abort causes */ @@ -671,8 +669,6 @@ static int nmk_i2c_xfer(struct i2c_adapter *i2c_adap, struct nmk_i2c_dev *dev = i2c_get_adapdata(i2c_adap); int j; - dev->busy = true; - pm_runtime_get_sync(&dev->adev->dev); /* Attempt three times to send the message queue */ @@ -697,8 +693,6 @@ static int nmk_i2c_xfer(struct i2c_adapter *i2c_adap, pm_runtime_put_sync(&dev->adev->dev); - dev->busy = false; - /* return the no. messages processed */ if (status) return status; @@ -885,12 +879,6 @@ static irqreturn_t i2c_irq_handler(int irq, void *arg) #ifdef CONFIG_PM_SLEEP static int nmk_i2c_suspend_late(struct device *dev) { - struct amba_device *adev = to_amba_device(dev); - struct nmk_i2c_dev *nmk_i2c = amba_get_drvdata(adev); - - if (nmk_i2c->busy) - return -EBUSY; - pinctrl_pm_select_sleep_state(dev); return 0; @@ -992,7 +980,6 @@ static int nmk_i2c_probe(struct amba_device *adev, const struct amba_id *id) goto err_no_mem; } dev->vendor = vendor; - dev->busy = false; dev->adev = adev; nmk_i2c_of_probe(np, dev);