i was porting mali driver from here:If governor suspends soon after started, it may not have the chance to
update devfreq stats, which leaves devfreq stats' current frequence be
zero.
So when the thermal core tries to throttle the power, it would failed
to get the correct static power of current frequence and print these
warnings:
[ 2.024735] core: dev_pm_opp_get_voltage: Invalid parameters
[ 2.024743] mali ff9a0000.gpu: Failed to get voltage for frequency 0:
-34
...
[ 2.026320] core: dev_pm_opp_get_voltage: Invalid parameters
[ 2.026327] mali ff9a0000.gpu: Failed to get voltage for frequency 0:
-34
Update devfreq stats when governor started to avoid that.
Signed-off-by: Jeffy Chen <jeffy.chen@xxxxxxxxxxxxxx>
How are you calling suspend/resume routins in the mali drivers?
It appears that your mali device driver's suspend/resume routines areno, but the suspend/resume would suspend/resume the governor.
accessing "struct devfreq_dev_status" directly. Is this correct?
right, that make sense. i put it here because the comment of this function said it should be called by governor, but you're right, it would be better this way, will send new version soon.
Plus, for MALI (if that assumption is correct), this issue might occur
with other governors.
If so, would it be better to put the first initializing call of
devfreq_update_stats() at devfreq_add_device()?
sorry, i should mention that, please check above link :)
Cheers,
MyungJoo
ps. Where can I look at the mali-devfreq device driver? (I couldn't find it)