Regression 2.6.27 -> 2.6.28

Michel Dänzer michel at daenzer.net
Mon Feb 2 14:11:04 PST 2009


On Mon, 2009-02-02 at 17:06 -0500, Alex Deucher wrote:
> On Sat, Jan 31, 2009 at 8:26 AM, Michel Dänzer <michel at daenzer.net> wrote:
> > On Fri, 2009-01-30 at 20:52 +0100, Jörg-Volker Peetz wrote:
> >>
> >> But with radeon_crtc_modeset_ioctl() calls in legacy_crtc_dpms() in
> >> xf86-video-ati/src/legacy_crtc.c disabled like this:
> >>
> >> $ diff legacy_crtc.c legacy_crtc.c.orig
> >> 671,672c671,672
> >> <     /*    if (mode == DPMSModeOff)
> >> <           radeon_crtc_modeset_ioctl(crtc, FALSE); */
> >> ---
> >> >     if (mode == DPMSModeOff)
> >> >     radeon_crtc_modeset_ioctl(crtc, FALSE);
> >> 710c710
> >> <       /* radeon_crtc_modeset_ioctl(crtc, TRUE); */
> >> ---
> >> >     radeon_crtc_modeset_ioctl(crtc, TRUE);
> >>
> >> the wakeups stayed below 5/s after xset dpms force off.
> >
> > Okay. Unfortunately, we can't just remove these calls, or 3D
> > applications with sync-to-vblank enabled may hang after a mode switch.
> > We need to know the exact conditions under which the CRTC frame counter
> > registers reset to zero, then we can move these calls where they are
> > really necessary.
> 
> The crtc frame counters are reset when the crtc is disabled or when
> the the frame count reset registers are written to.

We never do the latter that I know of. I thougt the above places was
where the CRTC is dis/enabled, but apparently not - do you know where
these calls need to move to?


-- 
Earthling Michel Dänzer           |                http://www.vmware.com
Libre software enthusiast         |          Debian, X and DRI developer


More information about the xorg-driver-ati mailing list