Re: [PATCH] media: qcom: iris: rollback OPP vote on PM resume failure

From: Hungyu Lin

Date: Tue Jul 28 2026 - 20:28:26 EST


> opp_set_rate(0) would only drop the performance vote but keep the
> clock ticking (without ensuring power). If the device's power state
> remains disabled, the OPP vote will be kept disabled too. I don't
> think we need it at all. The clock may possibly need to be disabled
> instead. Or maybe not, if it's hw-controlled (which I'm not sure if
> it is)
Thanks for the review.

After tracing the call flow further, I found that the maximum OPP
belongs to the complete VPU power-on transaction:

iris_vpu_power_on()
|-- iris_set_icc_bw()
|-- iris_opp_set_rate(..., ULONG_MAX)
|-- power_on_controller()
| `-- iris_enable_power_domains(...)
`-- power_on_hw()
`-- iris_enable_power_domains(...)

The power-domain helper only manages one functional domain, so it
should not own the transaction-wide OPP state. I will move the OPP
lifetime and error cleanup to iris_vpu_power_on() and send the update
as v7 after validation.

Also, sorry for the versioning confusion. The previous unversioned
posting was intended to be v6.

Thanks,
Hungyu Lin