Page MenuHomeFreeBSD

Forward I2C transfers to the correct device when falling back to GPIO bitbanging.
ClosedPublic

Authored by jhb on Dec 16 2015, 11:18 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Apr 19, 9:58 AM
Unknown Object (File)
Fri, Apr 19, 9:56 AM
Unknown Object (File)
Mar 15 2024, 4:02 PM
Unknown Object (File)
Mar 15 2024, 4:00 PM
Unknown Object (File)
Dec 27 2023, 8:43 PM
Unknown Object (File)
Dec 27 2023, 8:43 PM
Unknown Object (File)
Dec 16 2023, 8:26 AM
Unknown Object (File)
Sep 26 2023, 10:32 PM
Subscribers

Details

Summary

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.

Test Plan
  • Try to use drm on an affected GPU. Was tested by Joe Maloney <jmaloney@pcbsd.org> in a thread on current@.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

jhb retitled this revision from to Forward I2C transfers to the correct device when falling back to GPIO bitbanging..
jhb updated this object.
jhb edited the test plan for this revision. (Show Details)
jhb added a reviewer: dumbbell.
imp added a reviewer: imp.
This revision is now accepted and ready to land.Dec 16 2015, 11:25 PM
adrian added a reviewer: adrian.
dumbbell edited edge metadata.
This revision was automatically updated to reflect the committed changes.