Bug 17714 - improper handling of close-lid events
Summary: improper handling of close-lid events
Status: RESOLVED WORKSFORME
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/radeonhd (show other bugs)
Version: 7.4 (2008.09)
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Luc Verhaegen
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-22 04:34 UTC by Elmar Stellnberger
Modified: 2008-09-23 00:04 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Elmar Stellnberger 2008-09-22 04:34:17 UTC
If I close the lid of my laptop only the internal PANEL screen should be powered off. Externally connected monitors like DVI-D_1 are expected to be kept alive.
  Besides this it would probably be the best solution if the driver itself ignored the close-lid event as the text consoles vt01,vt02,- do and let the close-lid event merely be handled by acpid or powersave alone. The proprietary fglrx-driver offers an --ignore-lid policy switch if that kind of behaviour should be required.

# xrandr -q|grep connected
PANEL connected
TV_7PIN_DIN disconnected
DVI-D_1 connected 1920x1200+0+0 550mm x 344mm
VGA_1 disconnected
Comment 1 Egbert Eich 2008-09-23 00:04:08 UTC
> If I close the lid of my laptop only the internal PANEL screen should be
> powered off. Externally connected monitors like DVI-D_1 are expected to be kept
> alive.
When I close the lid the backlight powers off while the externally attached display remains lit. I've just retested this on two different laptops here.

> # xrandr -q|grep connected
> PANEL connected

Could it be that you are looking for the wrong thing here?
Internal panels are expected to be connected always (we don't expect users to physcailly remove them).
Also they remain active as  there is no decent way for the X driver to obtain information on the current lid state: the BIOS scratch registers designed for this don't provide accurate information on any machine I've checked and X presently doesn't have a reliable way to obtain such information form ACPI.

>   Besides this it would probably be the best solution if the driver itself
> ignored the close-lid event as the text consoles vt01,vt02,- do and let the
> close-lid event merely be handled by acpid or powersave alone. The proprietary
> fglrx-driver offers an --ignore-lid policy switch if that kind of behaviour
> should be required.

The driver does ignore the close-lid event. The output remains active, the backlight is powered off externally (by SMI, firmware).
For power saving the internal output should probably be deactivated (output and crtc powered down).
Currently the goal is to keep policy away from the server and leave it to the desktop session to determine how to deal with such events.
Xrandr provides the interfaces for an X client which listens to ACPI events to disable the panel.
Thus things work as expected.


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.