https://bugs.freedesktop.org/show_bug.cgi?id=47007
--- Comment #6 from Tvrtko Ursulin tvrtko.ursulin@onelan.co.uk 2012-03-07 02:10:26 PST --- Further investigation along the lines of your comment.
For the HDMI connector ATOM_HPD_INT_RECORD_TYPE contains a gpio->mask of 0x100 which translates to RADEON_HPD_2. hpd.plugged_state is zero.
When hpd.hpd is not RADEON_HPD_NONE radeon_add_atom_connector sets connector->polled to DRM_CONNECTOR_POLL_HPD. So if poll helper is running it will result in the observed behaviour -> discard and re-fetch full EDID on every poll even when the connector hasn't been re-connected.
But you are saying poll helper should not be running right? I'll investigate that area next.