]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 3 Oct 2013 02:21:09 +0000 (19:21 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 3 Oct 2013 02:21:09 +0000 (19:21 -0700)
added patches:
drm-i915-dp-increase-i2c-over-aux-retry-interval-on-aux-defer.patch

queue-3.4/drm-i915-dp-increase-i2c-over-aux-retry-interval-on-aux-defer.patch [new file with mode: 0644]
queue-3.4/series

diff --git a/queue-3.4/drm-i915-dp-increase-i2c-over-aux-retry-interval-on-aux-defer.patch b/queue-3.4/drm-i915-dp-increase-i2c-over-aux-retry-interval-on-aux-defer.patch
new file mode 100644 (file)
index 0000000..0a5312c
--- /dev/null
@@ -0,0 +1,47 @@
+From 8d16f258217f2f583af1fd57c5144aa4bbe73e48 Mon Sep 17 00:00:00 2001
+From: Jani Nikula <jani.nikula@intel.com>
+Date: Fri, 20 Sep 2013 16:42:15 +0300
+Subject: drm/i915/dp: increase i2c-over-aux retry interval on AUX DEFER
+
+From: Jani Nikula <jani.nikula@intel.com>
+
+commit 8d16f258217f2f583af1fd57c5144aa4bbe73e48 upstream.
+
+There is no clear cut rules or specs for the retry interval, as there
+are many factors that affect overall response time. Increase the
+interval, and even more so on branch devices which may have limited i2c
+bit rates.
+
+Signed-off-by: Jani Nikula <jani.nikula@intel.com>
+Reference: https://bugs.freedesktop.org/show_bug.cgi?id=60263
+Tested-by: Nicolas Suzor <nic@suzor.com>
+Reviewed-by: Todd Previte <tprevite@gmail.com>
+Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/i915/intel_dp.c |   13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
+
+--- a/drivers/gpu/drm/i915/intel_dp.c
++++ b/drivers/gpu/drm/i915/intel_dp.c
+@@ -625,7 +625,18 @@ intel_dp_i2c_aux_ch(struct i2c_adapter *
+                       DRM_DEBUG_KMS("aux_ch native nack\n");
+                       return -EREMOTEIO;
+               case AUX_NATIVE_REPLY_DEFER:
+-                      udelay(100);
++                      /*
++                       * For now, just give more slack to branch devices. We
++                       * could check the DPCD for I2C bit rate capabilities,
++                       * and if available, adjust the interval. We could also
++                       * be more careful with DP-to-Legacy adapters where a
++                       * long legacy cable may force very low I2C bit rates.
++                       */
++                      if (intel_dp->dpcd[DP_DOWNSTREAMPORT_PRESENT] &
++                          DP_DWN_STRM_PORT_PRESENT)
++                              usleep_range(500, 600);
++                      else
++                              usleep_range(300, 400);
+                       continue;
+               default:
+                       DRM_ERROR("aux_ch invalid native reply 0x%02x\n",
index 8a9a9b2cc1f74f744e87ad132fb8eecfdbcb2545..2b70987db0ea811b5a2686a38fdc54c205a00121 100644 (file)
@@ -7,3 +7,4 @@ xhci-fix-race-between-ep-halt-and-urb-cancellation.patch
 usb-core-devio.c-don-t-reject-control-message-to-endpoint-with-wrong-direction-bit.patch
 dm-snapshot-workaround-for-a-false-positive-lockdep-warning.patch
 dm-snapshot-fix-performance-degradation-due-to-small-hash-size.patch
+drm-i915-dp-increase-i2c-over-aux-retry-interval-on-aux-defer.patch