]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
i2c: designware: Keep pm_runtime_enable/_disable calls in sync
authorJarkko Nikula <jarkko.nikula@linux.intel.com>
Thu, 10 Dec 2015 11:48:43 +0000 (13:48 +0200)
committerWolfram Sang <wsa@the-dreams.de>
Sat, 12 Dec 2015 17:04:57 +0000 (18:04 +0100)
commite79e72c5a242fa21c971cfb40017f1039daf4d77
treee31e0726b461d4b8a5910b58003289974e3eb32d
parent2d244c81481fa5142a2ba6656ab7a8e40c849c27
i2c: designware: Keep pm_runtime_enable/_disable calls in sync

On an hardware shared I2C bus (certain Intel Baytrail SoC platforms) the
runtime PM disable depth keeps increasing over repeated modprobe/rmmod
cycle because pm_runtime_disable() is called without checking should it
be disabled already because of bus sharing.

This hasn't made any other harm than dev->power.disable_depth keeps
increasing but keep it sync by calling pm_runtime_disable() only when
runtime PM is not disabled.

Reported-by: Wolfram Sang <wsa@the-dreams.de>
Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-designware-platdrv.c