Bug 14810 - ati driver sleeps for 1 second every 6 seconds with LCD display panel
Summary: ati driver sleeps for 1 second every 6 seconds with LCD display panel
Status: RESOLVED NOTOURBUG
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-03-04 11:33 UTC by registering on bugzilla vs greylisting steeeeeenks
Modified: 2008-12-03 01:20 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description registering on bugzilla vs greylisting steeeeeenks 2008-03-04 11:33:51 UTC
I have Dell Latitude C640 with an ATI display card and a LCD display (a normal feature for a laptop, if you ask me).  With the ATI driver for xorg that ships with ubuntu as xserver-xorg-video-ati_6.7.195-1ubuntu2_i386.deb, I got stop-start behaviour.  Every 6 seconds, there was a small delay.  

In my Xorg.0.log I get this every 6 seconds too:

enable montype: 2
enable montype: 2
enable montype: 2
enable montype: 2
enable montype: 2
enable montype: 2

I think it's checking whether there's a monitor plugged into the VGA port.

Here's the fix that evaporated this bug for me.  This code applies only to the LCD display panel:

--- xserver-xorg-video-ati-6.7.195/src/radeon_display.c 2007-10-03 
01:30:52.000000000 +0200
+++ xserver-xorg-video-ati-6.7.195.patched/src/radeon_display.c 2008-02-26 
15:53:07.00000000
0 +0200
@@ -366,7 +366,6 @@
             tmp = INREG(RADEON_LVDS_GEN_CNTL);
             tmp |= (RADEON_LVDS_ON | RADEON_LVDS_BLON);
             tmp &= ~(RADEON_LVDS_DISPLAY_DIS);
-           usleep (radeon_output->PanelPwrDly * 1000);
             OUTREG(RADEON_LVDS_GEN_CNTL, tmp);
             save->lvds_gen_cntl |= (RADEON_LVDS_ON | RADEON_LVDS_BLON);
             save->lvds_gen_cntl &= ~(RADEON_LVDS_DISPLAY_DIS);


I suspect that the "usleep" was put there for a reason, but it was not anticipated that it would get called every time the x server 
checks whether a new monitor has been attached.  (Conceivably radeon_output->PanelPwrDly = 0 ; could work better)

Meta information:

1002:4c57 ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]
Comment 1 Alex Deucher 2008-03-04 11:41:58 UTC
(In reply to comment #0)
> I have Dell Latitude C640 with an ATI display card and a LCD display (a normal
> feature for a laptop, if you ask me).  With the ATI driver for xorg that ships
> with ubuntu as xserver-xorg-video-ati_6.7.195-1ubuntu2_i386.deb, I got
> stop-start behaviour.  Every 6 seconds, there was a small delay.  
> 
> In my Xorg.0.log I get this every 6 seconds too:
> 
> enable montype: 2
> enable montype: 2
> enable montype: 2
> enable montype: 2
> enable montype: 2
> enable montype: 2

The driver doesn't do this by default.  It sounds like ubuntu must have process running that does something every 6 seconds.

> I suspect that the "usleep" was put there for a reason, but it was not
> anticipated that it would get called every time the x server 
> checks whether a new monitor has been attached.  (Conceivably
> radeon_output->PanelPwrDly = 0 ; could work better)

The usleep is required to to bring the panel up reliably.
Comment 2 Timo Aaltonen 2008-03-04 12:05:41 UTC
Tell more about your setup;
-what desktop environment do you use (GNOME, KDE, ?)
-can you see the same with a vanilla installation (livecd should be close enough)

and please attach the output of 'ps auxwww' from a normal session.
Comment 3 registering on bugzilla vs greylisting steeeeeenks 2008-03-11 11:39:14 UTC
The laptop in question has suffered decelleration trauma, and my installation has gone to hard disk heaven.  I'll see if I can produce the behaviour on a new installation and hard disk on the same system and try to pin down which process causes it - but it will take a while.  

The system was set up with KDE, and the one strange thing I did was to enable XAA for transparency .. briefly - before discovering that I don't really have memory to handle things like this.  While diagnosing the fault, I did kill every non-essential process (e.g. hal-storage, KDE power saving, etc), which had no effect.
Comment 4 Alex Deucher 2008-12-03 01:20:07 UTC
please re-open if this is still an issue.  I suspect kde is polling for monitors.


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.