• Dmitry Osipenko's avatar
    i2c: tegra: Ensure that device is suspended before driver is removed · ef3fe574
    Dmitry Osipenko authored
    Tegra I2C device isn't guaranteed to be suspended after removal of
    the driver since driver uses pm_runtime_put() that is asynchronous and
    pm_runtime_disable() cancels pending power-change requests. This means
    that potentially refcount of the clocks may become unbalanced after
    removal of the driver. This a very minor problem which unlikely to
    happen in practice and won't cause any visible problems, nevertheless
    let's replace pm_runtime_disable() with pm_runtime_force_suspend() and
    use pm_runtime_put_sync() which disables RPM of the device and puts it
    into suspend before driver is removed.
    Signed-off-by: default avatarDmitry Osipenko <digetx@gmail.com>
    Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
    ef3fe574
i2c-tegra.c 53.2 KB