[Intel-gfx] [PATCH] drm/i915: Add Baytrail PSR Support.
Rodrigo Vivi
rodrigo.vivi at gmail.com
Thu Jan 30 18:01:08 CET 2014
On Thu, Jan 30, 2014 at 11:02 AM, Chris Wilson <chris at chris-wilson.co.uk> wrote:
> On Wed, Jan 29, 2014 at 01:50:06PM -0200, Rodrigo Vivi wrote:
>> @@ -7501,6 +7501,9 @@ static void intel_crtc_update_cursor(struct drm_crtc *crtc,
>> u32 base = 0, pos = 0;
>> bool visible;
>>
>> + if (IS_VALLEYVIEW(dev))
>> + intel_edp_psr_inactivate(dev);
>> +
>
> Inactivate means that we turn off PSR for some period of time until idle
> again, right?
Yes, right.
> In the case of a moving cursor that means indefinitely.
That's true... So I think we really need a work queue delaying the enable.
Or do you have any better idea?
>
> Also it sounds overkill to have to disable PSR just for the cursor
> sprite. Is there not some preferrable alternatives or hw that dtrt?
Yeap, I totally agree. The other option implemented by other drivers
is to use PSR SW control mode where driver controls all entry and exit
flow, since Baytrail cannot do it right on HW mode. But even the force
exit on this case was using the PSR_RESET that I'm using on inactivate
function. and they exported that over ioctl.
So I preferred to let all this on kernel side using hardware as much
as possible and workarounding the cases where hardware buggy on screen
update detection, although it looks like an overkill for a single
cursor update. :/
> -Chris
>
> --
> Chris Wilson, Intel Open Source Technology Centre
--
Rodrigo Vivi
Blog: http://blog.vivi.eng.br
More information about the Intel-gfx
mailing list