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); _______________________________________________ svn-src-stable-10@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10 To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"