Bug 13610 - Radeon VBlanks enabled after VT switch
Summary: Radeon VBlanks enabled after VT switch
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: medium minor
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
: 13613 (view as bug list)
Depends on:
Reported: 2007-12-11 18:09 UTC by Arthur Taylor
Modified: 2007-12-12 17:12 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

disabe-vblank-on-entervt (572 bytes, patch)
2007-12-11 18:13 UTC, Arthur Taylor
no flags Details | Splinter Review

Description Arthur Taylor 2007-12-11 18:09:10 UTC
After changing VTs to and from the xserver VBlanks are left enabled even if there is not dri app running. Starting and stopping a dri app will disable them again. It seems that RADEONDRISetVBlankInterrupt (pScrn, TRUE) is always called in RADEONEnterVT.
Comment 1 Arthur Taylor 2007-12-11 18:13:08 UTC
Created attachment 13049 [details] [review]

Testing on my hardware showed (Radeon Mobility M7 LW AGP) showed that enabling vblanks is not necessary, if a dri app was open during a vt switch it will call RADEONDRISetVBlankInterrupt when it is restored after the VT switch anyways. Furthermore, I found that after returning to xserver, even if RADEONDRISetVBlankInterrupt had never been called that vblanks were enabled as radeon@pci:0000:01:00.0 was generating 60 interrupts / second. It seems that RADEONDRISetVBlankInterrupt (pScrn, FALSE) can successfully be called in RADEONEnterVT, disabling vblanks and saving power while not effecting dri apps that may have been open, but of course I have no idea if this is true on other setups.
Comment 2 Alex Deucher 2007-12-12 07:26:52 UTC
*** Bug 13613 has been marked as a duplicate of this bug. ***
Comment 3 Alex Deucher 2007-12-12 17:12:36 UTC
fixed in commit: 6ccf5b33d27218ae1c45ab93c122438ed536d8ba

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.