From: Daniel Vetter Date: Sat, 1 Dec 2012 12:53:46 +0000 (+0100) Subject: drm/i915: use gmbus irq to wait for gmbus idle X-Git-Tag: v3.9-rc1~83^2~40^2~46 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2c438c0273b76d6cb158f8bdd0aa3ebf66e48a28;p=pandora-kernel.git drm/i915: use gmbus irq to wait for gmbus idle GMBUS_ACTIVE has inverted sense and so doesn't fit into the wait_hw_status helper, hence create a new gmbus_wait_idle functions. Also, we only care about the idle irq event and nothing else, which allows us to use the wait_event_timeout helper directly without jumping through hoops to catch NAKs. Since gen2/3 don't have gmbus interrupts, handle them separately with the old wait_for macro. This shaves another few ms off reading EDID from a hdmi screen on my testbox here. EDID reading with interrupt driven gmbus is now as fast as with busy-looping gmbus at 28 ms here (with negligible cpu overhead). Reviewed-by: Imre Deak Signed-off-by: Daniel Vetter --- Reading git-diff-tree failed