Re: [PATCH 1/2] i2c: xiic: Implement Power management
From: Wolfram Sang <hidden>
Date: 2016-03-01 18:29:47
Also in:
linux-i2c
Attachments
- signature.asc [application/pgp-signature] 819 bytes
From: Wolfram Sang <hidden>
Date: 2016-03-01 18:29:47
Also in:
linux-i2c
+ ret = clk_prepare_enable(i2c->clk); + if (ret) + dev_err(&pdev->dev, "Unable to enable clock.\n");
Don't you want to bail out here? The clk refcounting will be messed up if you continue.
+err_clk_dis: + clk_disable_unprepare(i2c->clk); + pm_runtime_set_suspended(&pdev->dev); + pm_runtime_disable(&pdev->dev); + return ret;
To match the inverse of the activation order, I'd put the clk_disable_unprepare after the pm_* calls. Couldn't it happen that those calls need to change the clk state?