Message ID | 20200319092034.695709-1-arkadiusz.hiler@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/display: Increase the DDI idle timeout to 500us | expand |
On Thu, Mar 19, 2020 at 11:20:34AM +0200, Arkadiusz Hiler wrote: > Bspec says that we should timeout after 500us. Let's match this in the > code. It may help with few of the timeouts we see here and there. Plese disregard. it's 500us when waiting on non-idle and only 8 (16 for BXT) for back to idle.
On Thu, Mar 19, 2020 at 11:30:03AM +0200, Arkadiusz Hiler wrote: > On Thu, Mar 19, 2020 at 11:20:34AM +0200, Arkadiusz Hiler wrote: > > Bspec says that we should timeout after 500us. Let's match this in the > > code. It may help with few of the timeouts we see here and there. > > Plese disregard. it's 500us when waiting on non-idle and only 8 (16 > for BXT) for back to idle. Could probably convert to intel_de_wait_for...() regardless. 1ms vs. 16us isn't going to kill us in modeset code. The exact bspec value can be kept as a comment.
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c index 73d0f4648c06..28650797fc2f 100644 --- a/drivers/gpu/drm/i915/display/intel_ddi.c +++ b/drivers/gpu/drm/i915/display/intel_ddi.c @@ -1097,7 +1097,7 @@ static void intel_wait_ddi_buf_idle(struct drm_i915_private *dev_priv, i915_reg_t reg = DDI_BUF_CTL(port); int i; - for (i = 0; i < 16; i++) { + for (i = 0; i < 500; i++) { udelay(1); if (intel_de_read(dev_priv, reg) & DDI_BUF_IS_IDLE) return;
Bspec says that we should timeout after 500us. Let's match this in the code. It may help with few of the timeouts we see here and there. Bspec: 22243, 49190 Issue: https://gitlab.freedesktop.org/drm/intel/issues/1069 Suggested-by: Uma Shankar <uma.shankar@intel.com> Cc: Imre Deak <imre.deak@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> --- drivers/gpu/drm/i915/display/intel_ddi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)