Skip to content

Commit

Permalink
i2c: exynos5: use core helper to mark adapter suspended
Browse files Browse the repository at this point in the history
Rejecting transfers should be handled by the core. Also, this will
ensure proper locking which was forgotten in this open coded version.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
  • Loading branch information
Wolfram Sang authored and Wolfram Sang committed Jan 8, 2019
1 parent 5a7b81f commit d5c95bd
Showing 1 changed file with 2 additions and 9 deletions.
11 changes: 2 additions & 9 deletions drivers/i2c/busses/i2c-exynos5.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,6 @@ enum i2c_type_exynos {

struct exynos5_i2c {
struct i2c_adapter adap;
unsigned int suspended:1;

struct i2c_msg *msg;
struct completion msg_complete;
Expand Down Expand Up @@ -715,11 +714,6 @@ static int exynos5_i2c_xfer(struct i2c_adapter *adap,
struct exynos5_i2c *i2c = adap->algo_data;
int i, ret;

if (i2c->suspended) {
dev_err(i2c->dev, "HS-I2C is not initialized.\n");
return -EIO;
}

ret = clk_enable(i2c->clk);
if (ret)
return ret;
Expand Down Expand Up @@ -847,8 +841,7 @@ static int exynos5_i2c_suspend_noirq(struct device *dev)
{
struct exynos5_i2c *i2c = dev_get_drvdata(dev);

i2c->suspended = 1;

i2c_mark_adapter_suspended(&i2c->adap);
clk_unprepare(i2c->clk);

return 0;
Expand All @@ -871,7 +864,7 @@ static int exynos5_i2c_resume_noirq(struct device *dev)

exynos5_i2c_init(i2c);
clk_disable(i2c->clk);
i2c->suspended = 0;
i2c_mark_adapter_resumed(&i2c->adap);

return 0;
}
Expand Down

0 comments on commit d5c95bd

Please sign in to comment.