[Bug 56139] [bisected] kernel 3.7.0-rc1 breaks 6950 (CAYMAN)

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Oct 26 07:08:26 PDT 2012


https://bugs.freedesktop.org/show_bug.cgi?id=56139

Alex Deucher <agd5f at yahoo.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #68760|0                           |1
        is obsolete|                            |

--- Comment #5 from Alex Deucher <agd5f at yahoo.com> ---
Created attachment 69113
  --> https://bugs.freedesktop.org/attachment.cgi?id=69113&action=edit
possible fix

(In reply to comment #4)
> the bug appeared. So it seems blanking the display controllers with for(i =
> 0; i < rdev->num_crtc; i++) is not equivalent to the code that it replaces.
> The original code first wrote in the EVERGREEN_CRTC_UPDATE_LOCK registers,
> before setting EVERGREEN_CRTC_CONTROL registers and writing again in the
> EVERGREEN_CRTC_UPDATE_LOCK registers. On the other hand, the new code
> doesn't write in the EVERGREEN_CRTC_UPDATE_LOCK neither before nor after
> setting EVERGREEN_CRTC_CONTROL.

It should be equivalent.  CRTC_UPDATE_LOCK turns off double buffering in the
crtc which makes register updates atomic.  The new code waits for the frame
count to increase (the double buffered updates happen at vblank) so it should
be equivalent.  That said, it shouldn't hurt to take the lock.  Does this patch
help?

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20121026/729bd063/attachment.html>


More information about the dri-devel mailing list