> @@ -211,6 +212,8 @@ static int gpu_i2c_master_xfer(struct i2c_adapter *adap,
>               goto exit;
>       }
>  
> +     pm_runtime_mark_last_busy(i2cd->dev);
> +     pm_runtime_put_autosuspend(i2cd->dev);
>       return i;
>  exit:
>       if (send_stop) {
> @@ -218,6 +221,8 @@ static int gpu_i2c_master_xfer(struct i2c_adapter *adap,
>               if (status2 < 0)
>                       dev_err(i2cd->dev, "i2c stop failed %d\n", status2);
>       }
> +     pm_runtime_mark_last_busy(i2cd->dev);
> +     pm_runtime_put_autosuspend(i2cd->dev);

Maybe another worthwhile refactorization possible here? The exit code
path and 'all good' code path look very similar. This can be done
incrementally, though. I think for now it is okay.

> +static __maybe_unused int gpu_i2c_suspend(struct device *dev)
> +{
> +     return 0;
> +}

Why do we need this?

Attachment: signature.asc
Description: PGP signature

Reply via email to