On Mon, Feb 2, 2009 at 5:11 PM, Michel Dänzer <mic...@daenzer.net> wrote:
> On Mon, 2009-02-02 at 17:06 -0500, Alex Deucher wrote:
>> On Sat, Jan 31, 2009 at 8:26 AM, Michel Dänzer <mic...@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?

That should work for pre-avivo cards, but we should probably move them
to radeon_crtc_dpms() in radeon_crtc.c since that will handle both the
legacy and atom cases (atom isn't currently handled at all).  Also,
note that on pre-avivo cards, crtc2 has to be enabled before crtc1 or
you may get a blank screen, so that may cause issues with the frame
counters on each crtc since we blank both crtcs when enabling crtc2.

Alex

------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to