[Intel-gfx] [PATCH] drm/i915: Enable scanline read for gen9 dsi

Shankar, Uma uma.shankar at intel.com
Thu Sep 14 11:47:55 UTC 2017



>-----Original Message-----
>From: Ville Syrjälä [mailto:ville.syrjala at linux.intel.com]
>Sent: Wednesday, September 13, 2017 11:07 PM
>To: Shankar, Uma <uma.shankar at intel.com>
>Cc: intel-gfx at lists.freedesktop.org; Srinivas, Vidya <vidya.srinivas at intel.com>
>Subject: Re: [PATCH] drm/i915: Enable scanline read for gen9 dsi
>
>On Wed, Sep 13, 2017 at 08:24:38AM +0000, Shankar, Uma wrote:
>>
>>
>> >-----Original Message-----
>> >From: Ville Syrjälä [mailto:ville.syrjala at linux.intel.com]
>> >Sent: Tuesday, September 12, 2017 8:36 PM
>> >To: Shankar, Uma <uma.shankar at intel.com>
>> >Cc: intel-gfx at lists.freedesktop.org; Srinivas, Vidya
>> ><vidya.srinivas at intel.com>
>> >Subject: Re: [PATCH] drm/i915: Enable scanline read for gen9 dsi
>> >
>> >On Tue, Sep 12, 2017 at 02:21:42PM +0000, Shankar, Uma wrote:
>> >>
>> >>
>> >> >-----Original Message-----
>> >> >From: Ville Syrjälä [mailto:ville.syrjala at linux.intel.com]
>> >> >Sent: Tuesday, September 12, 2017 7:43 PM
>> >> >To: Shankar, Uma <uma.shankar at intel.com>
>> >> >Cc: intel-gfx at lists.freedesktop.org; Srinivas, Vidya
>> >> ><vidya.srinivas at intel.com>
>> >> >Subject: Re: [PATCH] drm/i915: Enable scanline read for gen9 dsi
>> >> >
>> >> >On Tue, Sep 12, 2017 at 01:40:58PM +0000, Shankar, Uma wrote:
>> >> >> If we have multiple scans on the same frame (no new flip being
>> >> >> issued). Prev timestamp value which is read from Frametime Stamp
>> >> >> will remain same, but current time stamp will keep on incrementing.
>> >> >
>> >> >The frame timestamp should get sampled on every vblank, whereas
>> >> >the flip timestamp only when a flip occurs. Are you using the
>> >> >correct timestamp
>> >register?
>> >> >
>> >>
>> >> Yes, we are using what is there in the patch.
>> >> Name Pipe A Frame Time Stamp
>> >> Symbol PIPE_FRMTMSTMP_A
>> >> Start 0x70048
>> >> End 0x7004B
>> >>
>> >> Its behaving as FLIP Timestamp though (not being updated on every
>> >vblank_start).
>> >> Atleast with the readback what we get on APL.
>> >
>> >Then it's broken and probably can't be used without having a decent
>> >idea of how long the frame actually is. Which probably means we'd
>> >need something like what Chris suggested.
>> >
>>
>> Hi Ville,
>> On further experiments we figured out that, frame time stamp  is not
>> updated if the vblank interrupt gets disabled (which is currently controlled
>through vblank get and put).
>> We tried to forcefully enable vblank interrupt by doing an extra  vblank get
>during crtc_enable.
>> By doing this,  we see that frame timestamp is updating at every vblank.
>
>Well, that's rather unfortuante. I guess we'd have to keep the vblank interrupt
>unmasked all the time. Hopefully we could still disable it in IER.
>
>So we'd unmask the interrupt permanently, and just toggle the IER bit as needed.
>That should be doable but somewhat annoying because it's exactly the opposite
>of what we do normally.
>

We tried controlling Vblank through IER, keeping IMR always unmasked as you suggested.
This is causing frame time stamp properly getting updated at every vblank. We will send the
patch for the same for review. Thanks Ville for your suggestion.

Regards,
Uma Shankar
 
>--
>Ville Syrjälä
>Intel OTC


More information about the Intel-gfx mailing list