[Intel-gfx] Responsiveness Changes to i915 Driver

Wilde, Martin martin.wilde at intel.com
Tue Aug 19 23:33:55 CEST 2014


Greetings - after reviewing Chris¹s feedback below and some thought, I
most likely do not need to add another trace message and the existing
³i915_flip_complete² trace message can be used.

Thus the only change requested is to have the T1_T3 value printed out
during driver init/re-init.  Here is the requested change:

diff -rupN src.org/third_party/kernel/3.10/drivers/gpu/drm/i915/intel_dp.c
src/third_party/kernel/3.10/drivers/gpu/drm/i915/intel_dp.c
--- 
src.org/third_party/kernel/3.10/drivers/gpu/drm/i915/intel_dp.c	2014-08-14
14:24:45.655312785 -0700
+++ src/third_party/kernel/3.10/drivers/gpu/drm/i915/intel_dp.c	2014-08-14
11:57:30.203608374 -0700
@@ -3528,6 +3528,7 @@ intel_dp_init_panel_power_sequencer(stru
 	intel_dp->panel_power_cycle_delay = get_delay(t11_t12);
 #undef get_delay
 
+	printk(KERN_INFO "i915: eDP T3 Value: %d\n",
intel_dp->panel_power_up_delay);
 	DRM_DEBUG_KMS("panel power up delay %d, power down delay %d, power cycle
delay %d\n",
 		      intel_dp->panel_power_up_delay, intel_dp->panel_power_down_delay,
 		      intel_dp->panel_power_cycle_delay);

Regards,


-martin

On 8/14/14, 11:26 PM, "Chris Wilson" <chris at chris-wilson.co.uk> wrote:

>On Thu, Aug 14, 2014 at 11:52:47PM +0000, Wilde, Martin wrote:
>> Greetings,
>> 
>> I am submitting the below changes to i915 Gfx driver to support resume
>>time Responsiveness measurements.  These changes parallel the work
>>already done in the IVB Windows Gfx driver.  These changes in addition
>>to other OTS scripts (suspend_resume) allow tracking of what is referred
>>to as the ³B2I² or ³Button To Image² time of the platform.  The shorter
>>this time, the more responsiveness the platform is viewed by the end
>>user.  Panel selection is an important factor in providing a more
>>responsive system.  Note there is no dependency on other scripts.  The
>>changes are standalone.
>> 
>> 
>>   *   Display the current T1_T3 value.  This is used to verify that the
>>timing set in the VBT is correct.  We have seen many instances where the
>>value is not set correctly for the panel and the resume time is longer
>>than necessary (e.g. 500ms T3 versus 200ms T3).
>>   *   Print the time when the first page flip occurs.  This is when the
>>user first sees the desktop displayed from resume.  While this
>>measurement could be done by other methods, this is the actual time that
>>the desktop manager/framebuffer makes the driver request and the Gfx
>>driver performs the action.  Thus any layering software added can be
>>correlated to increases in this time.
>> 
>> To support the latter (first page flip), I added a new ftrace called
>>³trace_i915_resume².  I looked at the existing page flip trace message
>>and that one is designed for every page flip.  I did not want to
>>convolute it with the one time flip trace on resume.  I used a trace
>>message instead of a printk to reduce any performance impacts of using a
>>printk.  Additionally printk is not reliable of when the message
>>actually appears in the kernel log.
>
>I am sorry, you are complaining that there is a tracepoint that gives
>you exactly what you want already, only that userspace needs to do some
>filtering? Which by the way, does not give you what you say you want
>anyway - the scanout is already active long before the first flip is
>handled, and in many, many cass that flip is just a figment of your
>imagination. Maybe what you mean is to B2UR rather than
>button-to-static-image.
>-Chris
>
>
>-- 
>Chris Wilson, Intel Open Source Technology Centre

-------------- next part --------------
A non-text attachment was scrubbed...
Name: i915.patch
Type: application/octet-stream
Size: 768 bytes
Desc: i915.patch
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20140819/5e539f31/attachment.obj>


More information about the Intel-gfx mailing list