* [PATCH] drm/i915: only disable memory self-refresh on GMCH
@ 2016-05-19 12:50 David Weinehall
2016-05-19 13:23 ` ✗ Ro.CI.BAT: failure for " Patchwork
2016-06-03 12:32 ` [PATCH] " Ville Syrjälä
0 siblings, 2 replies; 5+ messages in thread
From: David Weinehall @ 2016-05-19 12:50 UTC (permalink / raw)
To: intel-gfx
The atomic version of intel_pre_plane_update did not check
for HAS_GMCH_DISPLAY before calling intel_set_memory_cxsr().
While this doesn't cause any issues on its own (it will
return without doing anything if the hardware doesn't
have the required feature), the drm_wait_one_vblank() that
is needed if memory self-refresh is disabled introduces
an unnecessary delay in the suspend path.
In cases where i915 is on the critical path it means that
we slow down suspend by 16.8ms on platforms that don't
need to disable memory self-refresh.
Signed-off-by: David Weinehall <david.weinehall@linux.intel.com>
---
drivers/gpu/drm/i915/intel_display.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 94d28c795e22..542806056cd9 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -4644,7 +4644,7 @@ static void intel_pre_plane_update(struct intel_crtc_state *old_crtc_state)
intel_pre_disable_primary(&crtc->base);
}
- if (pipe_config->disable_cxsr) {
+ if (pipe_config->disable_cxsr && HAS_GMCH_DISPLAY(dev)) {
crtc->wm.cxsr_allowed = false;
/*
--
2.8.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 5+ messages in thread
* ✗ Ro.CI.BAT: failure for drm/i915: only disable memory self-refresh on GMCH
2016-05-19 12:50 [PATCH] drm/i915: only disable memory self-refresh on GMCH David Weinehall
@ 2016-05-19 13:23 ` Patchwork
2016-05-19 15:09 ` David Weinehall
2016-06-03 12:32 ` [PATCH] " Ville Syrjälä
1 sibling, 1 reply; 5+ messages in thread
From: Patchwork @ 2016-05-19 13:23 UTC (permalink / raw)
To: David Weinehall; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: only disable memory self-refresh on GMCH
URL : https://patchwork.freedesktop.org/series/7406/
State : failure
== Summary ==
Series 7406v1 drm/i915: only disable memory self-refresh on GMCH
http://patchwork.freedesktop.org/api/1.0/series/7406/revisions/1/mbox
Test drv_hangman:
Subgroup error-state-basic:
fail -> PASS (ro-ilk1-i5-650)
Test gem_exec_flush:
Subgroup basic-batch-kernel-default-cmd:
pass -> FAIL (ro-byt-n2820)
fi-byt-n2820 total:218 pass:175 dwarn:0 dfail:0 fail:2 skip:41
fi-hsw-i7-4770k total:219 pass:198 dwarn:0 dfail:0 fail:0 skip:21
fi-hsw-i7-4770r total:219 pass:192 dwarn:0 dfail:0 fail:0 skip:27
fi-skl-i7-6700k total:219 pass:191 dwarn:0 dfail:0 fail:0 skip:28
ro-bdw-i5-5250u total:219 pass:181 dwarn:0 dfail:0 fail:0 skip:38
ro-bdw-i7-5557U total:219 pass:206 dwarn:0 dfail:0 fail:0 skip:13
ro-bdw-i7-5600u total:219 pass:187 dwarn:0 dfail:0 fail:0 skip:32
ro-byt-n2820 total:218 pass:174 dwarn:0 dfail:0 fail:3 skip:41
ro-hsw-i3-4010u total:218 pass:193 dwarn:0 dfail:0 fail:0 skip:25
ro-hsw-i7-4770r total:219 pass:194 dwarn:0 dfail:0 fail:0 skip:25
ro-ilk-i7-620lm total:219 pass:151 dwarn:0 dfail:0 fail:1 skip:67
ro-ilk1-i5-650 total:214 pass:152 dwarn:0 dfail:0 fail:1 skip:61
ro-ivb-i7-3770 total:219 pass:183 dwarn:0 dfail:0 fail:0 skip:36
ro-ivb2-i7-3770 total:219 pass:187 dwarn:0 dfail:0 fail:0 skip:32
ro-skl-i7-6700hq total:214 pass:189 dwarn:0 dfail:0 fail:0 skip:25
ro-snb-i7-2620M total:219 pass:177 dwarn:0 dfail:0 fail:1 skip:41
fi-bsw-n3050 failed to connect after reboot
fi-snb-i7-2600 failed to connect after reboot
ro-bsw-n3050 failed to connect after reboot
Results at /archive/results/CI_IGT_test/RO_Patchwork_941/
a2499a0 drm-intel-nightly: 2016y-05m-18d-17h-17m-55s UTC integration manifest
7810f86 drm/i915: only disable memory self-refresh on GMCH
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ✗ Ro.CI.BAT: failure for drm/i915: only disable memory self-refresh on GMCH
2016-05-19 13:23 ` ✗ Ro.CI.BAT: failure for " Patchwork
@ 2016-05-19 15:09 ` David Weinehall
2016-06-07 15:58 ` Ville Syrjälä
0 siblings, 1 reply; 5+ messages in thread
From: David Weinehall @ 2016-05-19 15:09 UTC (permalink / raw)
To: intel-gfx
On Thu, May 19, 2016 at 01:23:53PM -0000, Patchwork wrote:
> == Series Details ==
>
> Series: drm/i915: only disable memory self-refresh on GMCH
> URL : https://patchwork.freedesktop.org/series/7406/
> State : failure
>
> == Summary ==
>
> Series 7406v1 drm/i915: only disable memory self-refresh on GMCH
> http://patchwork.freedesktop.org/api/1.0/series/7406/revisions/1/mbox
>
> Test drv_hangman:
> Subgroup error-state-basic:
> fail -> PASS (ro-ilk1-i5-650)
Sadly unlikely to be the result of my patch...
> Test gem_exec_flush:
> Subgroup basic-batch-kernel-default-cmd:
> pass -> FAIL (ro-byt-n2820)
This testcase fails on my N2820 even without my patch.
Kind regards, David Weinehall
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] drm/i915: only disable memory self-refresh on GMCH
2016-05-19 12:50 [PATCH] drm/i915: only disable memory self-refresh on GMCH David Weinehall
2016-05-19 13:23 ` ✗ Ro.CI.BAT: failure for " Patchwork
@ 2016-06-03 12:32 ` Ville Syrjälä
1 sibling, 0 replies; 5+ messages in thread
From: Ville Syrjälä @ 2016-06-03 12:32 UTC (permalink / raw)
To: David Weinehall; +Cc: intel-gfx
On Thu, May 19, 2016 at 03:50:36PM +0300, David Weinehall wrote:
> The atomic version of intel_pre_plane_update did not check
> for HAS_GMCH_DISPLAY before calling intel_set_memory_cxsr().
> While this doesn't cause any issues on its own (it will
> return without doing anything if the hardware doesn't
> have the required feature), the drm_wait_one_vblank() that
> is needed if memory self-refresh is disabled introduces
> an unnecessary delay in the suspend path.
>
> In cases where i915 is on the critical path it means that
> we slow down suspend by 16.8ms on platforms that don't
> need to disable memory self-refresh.
>
> Signed-off-by: David Weinehall <david.weinehall@linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 94d28c795e22..542806056cd9 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -4644,7 +4644,7 @@ static void intel_pre_plane_update(struct intel_crtc_state *old_crtc_state)
> intel_pre_disable_primary(&crtc->base);
> }
>
> - if (pipe_config->disable_cxsr) {
> + if (pipe_config->disable_cxsr && HAS_GMCH_DISPLAY(dev)) {
Might be even better to track the state of cxsr and only wait when it
really changed state. But this looks OK for now.
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> crtc->wm.cxsr_allowed = false;
>
> /*
> --
> 2.8.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ✗ Ro.CI.BAT: failure for drm/i915: only disable memory self-refresh on GMCH
2016-05-19 15:09 ` David Weinehall
@ 2016-06-07 15:58 ` Ville Syrjälä
0 siblings, 0 replies; 5+ messages in thread
From: Ville Syrjälä @ 2016-06-07 15:58 UTC (permalink / raw)
To: intel-gfx
On Thu, May 19, 2016 at 06:09:11PM +0300, David Weinehall wrote:
> On Thu, May 19, 2016 at 01:23:53PM -0000, Patchwork wrote:
> > == Series Details ==
> >
> > Series: drm/i915: only disable memory self-refresh on GMCH
> > URL : https://patchwork.freedesktop.org/series/7406/
> > State : failure
> >
> > == Summary ==
> >
> > Series 7406v1 drm/i915: only disable memory self-refresh on GMCH
> > http://patchwork.freedesktop.org/api/1.0/series/7406/revisions/1/mbox
> >
> > Test drv_hangman:
> > Subgroup error-state-basic:
> > fail -> PASS (ro-ilk1-i5-650)
>
> Sadly unlikely to be the result of my patch...
>
> > Test gem_exec_flush:
> > Subgroup basic-batch-kernel-default-cmd:
> > pass -> FAIL (ro-byt-n2820)
>
> This testcase fails on my N2820 even without my patch.
I would appreaciate a bit more detail in these analyses.
(gem_exec_flush:6039) CRITICAL: Test assertion failure function batch, file gem_exec_flush.c:456:
(gem_exec_flush:6039) CRITICAL: Failed assertion: map[i] == cycles + i
(gem_exec_flush:6039) CRITICAL: error: 0xabcdabcd != 0x2f5
Subtest basic-batch-kernel-default-cmd failed.
https://bugs.freedesktop.org/show_bug.cgi?id=95372
Patch pushed to dinq. Thanks.
--
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-06-07 15:58 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-05-19 12:50 [PATCH] drm/i915: only disable memory self-refresh on GMCH David Weinehall
2016-05-19 13:23 ` ✗ Ro.CI.BAT: failure for " Patchwork
2016-05-19 15:09 ` David Weinehall
2016-06-07 15:58 ` Ville Syrjälä
2016-06-03 12:32 ` [PATCH] " Ville Syrjälä
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox