Skip to content

Commit 5a7b81f

Browse files
Wolfram SangWolfram Sang
authored andcommitted
i2c: sprd: use core helper to mark adapter suspended
Rejecting transfers should be handled by the core. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by: Baolin Wang <baolin.wang@linaro.org> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
1 parent 7b6b699 commit 5a7b81f

File tree

1 file changed

+2
-12
lines changed

1 file changed

+2
-12
lines changed

drivers/i2c/busses/i2c-sprd.c

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@ struct sprd_i2c {
8686
u32 count;
8787
int irq;
8888
int err;
89-
bool is_suspended;
9089
};
9190

9291
static void sprd_i2c_set_count(struct sprd_i2c *i2c_dev, u32 count)
@@ -284,9 +283,6 @@ static int sprd_i2c_master_xfer(struct i2c_adapter *i2c_adap,
284283
struct sprd_i2c *i2c_dev = i2c_adap->algo_data;
285284
int im, ret;
286285

287-
if (i2c_dev->is_suspended)
288-
return -EBUSY;
289-
290286
ret = pm_runtime_get_sync(i2c_dev->dev);
291287
if (ret < 0)
292288
return ret;
@@ -590,21 +586,15 @@ static int __maybe_unused sprd_i2c_suspend_noirq(struct device *dev)
590586
{
591587
struct sprd_i2c *i2c_dev = dev_get_drvdata(dev);
592588

593-
i2c_lock_bus(&i2c_dev->adap, I2C_LOCK_ROOT_ADAPTER);
594-
i2c_dev->is_suspended = true;
595-
i2c_unlock_bus(&i2c_dev->adap, I2C_LOCK_ROOT_ADAPTER);
596-
589+
i2c_mark_adapter_suspended(&i2c_dev->adap);
597590
return pm_runtime_force_suspend(dev);
598591
}
599592

600593
static int __maybe_unused sprd_i2c_resume_noirq(struct device *dev)
601594
{
602595
struct sprd_i2c *i2c_dev = dev_get_drvdata(dev);
603596

604-
i2c_lock_bus(&i2c_dev->adap, I2C_LOCK_ROOT_ADAPTER);
605-
i2c_dev->is_suspended = false;
606-
i2c_unlock_bus(&i2c_dev->adap, I2C_LOCK_ROOT_ADAPTER);
607-
597+
i2c_mark_adapter_resumed(&i2c_dev->adap);
608598
return pm_runtime_force_resume(dev);
609599
}
610600

0 commit comments

Comments
 (0)