Hi Wolfram Sang wrote: > > From: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> > > Reported-by: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> > --- Please add explain why this patch is needed, and what happen without this patch. And my previous patch didn't explain this, but please add 93c659d820ef291f6ca5e628f44b26cfb2226aba was cause of this issue. > drivers/i2c/busses/i2c-rcar.c | 13 +++++++++---- > 1 file changed, 9 insertions(+), 4 deletions(-) > > diff --git a/drivers/i2c/busses/i2c-rcar.c b/drivers/i2c/busses/i2c-rcar.c > index 616433d387cdb2..58dbd30c24d1cc 100644 > --- a/drivers/i2c/busses/i2c-rcar.c > +++ b/drivers/i2c/busses/i2c-rcar.c > @@ -612,7 +612,10 @@ static int rcar_i2c_probe(struct platform_device *pdev) > if (IS_ERR(priv->io)) > return PTR_ERR(priv->io); > > + pm_runtime_enable(dev); > + pm_runtime_get_sync(dev); > rcar_i2c_init(priv); > + pm_runtime_put(dev); > > irq = platform_get_irq(pdev, 0); > init_waitqueue_head(&priv->wait); > @@ -631,22 +634,24 @@ static int rcar_i2c_probe(struct platform_device *pdev) > dev_name(dev), priv); > if (ret < 0) { > dev_err(dev, "cannot get irq %d\n", irq); > - return ret; > + goto out_pm_disable; > } > > - pm_runtime_enable(dev); > platform_set_drvdata(pdev, priv); > > ret = i2c_add_numbered_adapter(adap); > if (ret < 0) { > dev_err(dev, "reg adap failed: %d\n", ret); > - pm_runtime_disable(dev); > - return ret; > + goto out_pm_disable; > } > > dev_info(dev, "probed\n"); > > return 0; > + > + out_pm_disable: > + pm_runtime_disable(dev); > + return ret; > } > > static int rcar_i2c_remove(struct platform_device *pdev) > -- > 2.1.4 > -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html