Hi all, I've always been a bit unhappy with the overall approach of my old hpd patches, I think they've tried to move too much clever logic into the helper code. Now we can still make the helper code a bit more smarter and flexible, but I think the really clever hpd handling code should be in the driver specific parts. This this series will allow: - Better separation of polling and hpd event handling. While still allowing a connector to be handled by both (for connectors where hpd is a bit unreliable). - Fixing up some corner cases in the polling, to avoid flip-flop behaviour and races. This should prevent spurious wakeups of userspace with hotplug events. - A tiny bit of code to make the unkown state a tad more useful.
Originally I wanted to wait with submitting this until I have the full i915 hpd rework ready. But Alex Deucher pinged me a few times too often on irc, and I agree, this pile should be useful in and of itself. Comments, flames and review highly welcome. Cheers, Daniel Daniel Vetter (7): drm: extract drm_kms_helper_hotplug_event drm: handle HPD and polled connectors separately drm: run the hpd irq event code directly drm: properly init/reset connector status drm: don't start the poll engine in probe_single_connector drm: don't unnecessarily enable the polling work drm: don't poll forced connectors drivers/gpu/drm/drm_crtc.c | 6 +++- drivers/gpu/drm/drm_crtc_helper.c | 71 ++++++++++++++++++++++++++++----------- include/drm/drm_crtc.h | 1 + include/drm/drm_crtc_helper.h | 1 + 4 files changed, 59 insertions(+), 20 deletions(-) -- 1.7.11.7