svn commit: r294292 - stable/10/sys/dev/drm2/i915
John Baldwin
jhb at FreeBSD.org
Mon Jan 18 20:44:30 UTC 2016
Author: jhb
Date: Mon Jan 18 20:44:29 2016
New Revision: 294292
URL: https://svnweb.freebsd.org/changeset/base/294292
Log:
MFC 292409:
It seems certain Intel GPUs use GPIO bitbanging over a child device
instead of GMBUS access for I2C transfers. The GMBUS driver falls back
to this mode when a transfer times out. However, the first transfer to
timeout was sending the request back to itself resulting in an panic due
to recursing on a lock. Fix it to forward the request on to the proper
device. This appears to have been accidentally changed in r277487.
Modified:
stable/10/sys/dev/drm2/i915/intel_iic.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/dev/drm2/i915/intel_iic.c
==============================================================================
--- stable/10/sys/dev/drm2/i915/intel_iic.c Mon Jan 18 20:22:51 2016 (r294291)
+++ stable/10/sys/dev/drm2/i915/intel_iic.c Mon Jan 18 20:44:29 2016 (r294292)
@@ -467,8 +467,7 @@ timeout:
* Try GPIO bitbanging instead.
*/
sc->force_bit_dev = true;
- error = -IICBUS_TRANSFER(idev, msgs, nmsgs);
- goto out;
+ error = -IICBUS_TRANSFER(dev_priv->bbbus[unit], msgs, nmsgs);
out:
sx_xunlock(&dev_priv->gmbus_sx);
More information about the svn-src-stable-10
mailing list