Bug 24770 - DPMS broken on MSI Wind U100 with 2.9.x driver
Summary: DPMS broken on MSI Wind U100 with 2.9.x driver
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: medium minor
Assignee: ykzhao
QA Contact: Xorg Project Team
Keywords: NEEDINFO
Depends on:
Reported: 2009-10-27 23:35 UTC by Alex Prokofiev
Modified: 2010-05-17 03:05 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Description Alex Prokofiev 2009-10-27 23:35:56 UTC
I have MSI Wind U100 netbook (945GM chipset). After upgrading driver
to 2.9.x DPMS stopped working in xorg: screen just blinks and stays in "on" state.

I've found that this problem is caused by driver setting brightness to 0 when
setting DPMS level (src/drmmode_display.c:925) via kernel backlight driver.
And on my system writing to /sys/devices/backlight/acpi_video0/brightness generates keypress events (as if I pressed brightness controls on keyboard). This keypresses immediately wake x server.

Simplest fix is to remove drmmode_output_dpms_backlight call.

Actually, I'm not sure if this "feature" should be filed here. Maybe this should be corrected in kernel. But it seems it is easier to correct in xorg driver.

BTW, in non-KMS mode this problem also exists but can be easily repaired by setting BACKLIGHT_CONTROL to 'native' with xrandr.

Kernel version: 2.6.31
Xorg version: 1.7.1
Intel driver version: 2.9.1
Comment 1 Carl Worth 2009-11-06 11:59:57 UTC
I'll assign this to Jesse.

I'm guessing that he'll know the proper fix, (or at least know the person
who should know that).

Comment 2 Guido Berhoerster 2009-11-10 13:10:30 UTC
A few more details on this can be found on the Ubuntu bugtracker: https://bugs.launchpad.net/xserver-xorg-video-intel/+bug/453812
Comment 3 Jesse Barnes 2010-02-05 15:21:02 UTC
Does this still happen with 2.6.33-rc kernels and the 2.10 X driver?
Comment 4 ykzhao 2010-02-07 19:59:56 UTC
Hi, Alex
    Sorry for the late response.
    Do you try to remove the remove drmmode_output_dpms_backlight call in drmmode_output_dpms and see whether the issue can be fixed?
    It seems that we use the incorrect order to set the backlight brightness. When the LVDS enters the DPMS off set, we will use the kernel syscall to put it into DPMS off set and then read the backlight brightness setting(In fact it will be the lowest). When we put it into DPMS on state again, it will then use the kernel syscall and then restore the saved backlight brightness setting. It is incorrect.
     Please check whether it can work for you if you remove the drmmode_output_dpms_backlight call in drmmode_output_dpms.

Comment 5 Alex Prokofiev 2010-02-07 22:15:27 UTC

I am currently not using latest kernel - mine is 2.6.32 (with gentoo patchset).
Intel driver is quite up-to-date - 2.10.0. 
To make DPMS work, I've commented "drmmode_output_dpms_backlight" call in drmmode_output_dpms.

So yes, commenting drmmode_output_dpms_backlight works.
Comment 6 ykzhao 2010-02-07 23:28:58 UTC
HI, Alex
    Can you send the corresponding patch to intel-gfx mailing list? And then I can add the "Acked-by".

Comment 7 Gordon Jin 2010-04-12 01:08:22 UTC
Let's not hold here.

Yakui, could you send/commit the patch if Alex doesn't do that?
Comment 8 Guido Berhoerster 2010-05-16 07:07:30 UTC
On my MSI Wind U100 I cannot reproduce this any more after upgrading the BIOS to version 1.0G.
Comment 9 Alex Prokofiev 2010-05-16 23:33:03 UTC
I've just upgraded BIOS to 1.0g on my U100 and can confirm: 
this bug dissapeared.
Comment 10 Matthias Hopf 2010-05-17 02:49:42 UTC
Removing drmmode_output_dpms_backlight is certainly not the right solution. As long as there is a BIOS update that fixes this issue I'd suggest to not change that part of code.

It's especially prone to break power saving for older laptop models that don't have dedicated hardware for switching off the backlight if the panel doesn't get a valid signal.
Comment 11 Stefan Dirsch 2010-05-17 03:05:37 UTC
I agree with Matthias. Apparently that's a BIOS bug. Hence closing accordingly.

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.