lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20111204160728.GA27292@archminux>
Date:	Sun, 4 Dec 2011 17:07:29 +0100
From:	Baptiste Jonglez <baptiste@...glez.org>
To:	linux-kernel@...r.kernel.org
Cc:	dri-devel@...ts.freedesktop.org, joeyli.kernel@...il.com
Subject: [Dual-LVDS Acer Iconia laptop] i915/DRM issue: one screen stays off
 [3.2-rc4+]

Hi,

I've got a lot of troubles with a dual-LVDS Acer laptop (it doesn't
have a keyboard, but two displays with touchscreens)

The Intel GPU is integrated into the Core i5-480M CPU: it's a bit
older than Sandybridge, as it seems to be based on the Arrandale
micro-architecture.

In the BIOS, both displays work fine; but as soon as the kernel boots
up, the second display (i.e. the one where you usually find a
keyboard) is turned off. The main display works as expected.

xrandr reports two LVDS displays: LVDS1, which is connected, and
LVDS2, which is marked as "disconnected". No matter what I tried, I
can't bring that second display up.

During the boot, just after the drm is set up, the following message
shows up:

  [drm:intel_dsm_pci_probe] *ERROR* failed to get supported _DSM functions

(attached is the relevant part of dmesg [1])



I then tried booting with "video=LVDS-2:e". The same message shows up
while booting, with these two following:

  [drm:drm_crtc_helper_set_config] *ERROR* failed to set mode on [CRTC:4]
  fbcon_init: detected unhandled fb_set_par error, error code -22

(attached is the relevant part of dmesg [2])

With that kernel command line forcing LVDS2, the
"drm_crtc_helper_set_config" error shows up each time I switch tty;
additionally, X does not want to start anymore (spewing out the
aforementioned error multiple times before giving up)


I'm currently using the latest 3.2 kernel from linus' tree
(af968e29acd91ebeb4224e899202c46c93171ecd), but the behavior was
similar with a vanilla 3.1.2.


Other notes about this issue:

 - with an Ubuntu 2.6.35 kernel, the second display is on but
   flickering (with the picture distorted like an old analog TV...).
   The main display is working fine, as always.

 - with an Archlinux 2.6.37.5 kernel, the behavior is the same as with
   3.2, the main display is ok and the second one is off.

 - I did succeed, only once and out of pure luck, to get the second
   screen to work with the 3.1.2 kernel. I haven't been able to
   reproduce that... I had booted with "video=LVDS-2:e" and let the
   laptop running ; pressing a key a few hours later turned back
   *both* displays on (the main display had been turned off by DPMS,
   and the second, well, was off from the start, as always)
   While not very helpful, it shows that it's definitely possible.

 - there are a some unhandled WMI events logged from the acer-wmi
   module [3] when closing the lid, opening it, and most importantly,
   when the (main) screen is turned on or off by DPMS.



What do you think? I haven't really succeeded in nailing the source of
the issue down, but here are a few possibilities I'm thinking of:

 - the driver is not aware it can drive two LVDS displays (not very
   likely, and it has worked once, see above)

 - there is some kind of switch that is able to turn the second screen
   on or off (I'm thinking of something like rfkill). If so, it looks
   like something non-standard and undocumented. This would explain
   the WMI events (see the last note above)

 - buggy ACPI implementation. I tried to extract then recompile the
   DSDT [4], and iasl spews out 17 errors and 12 warnings. Also worth
   noticing is that line in dmesg:
"pci0000:00: ACPI _OSC request failed (AE_ERROR), returned control mask: 0x1d"


The Archlinux userland is:
 - libdrm 2.4.27
 - xorg-server 1.11.2
 - intel-dri 7.11.1
 - xf86-video-intel 2.17.0


Please let me know if there are any other details I should provide.
Regards,
Baptiste

Attachments:
[1] dmesg-DSM-functions.log - drm errors when booting normally
[2] dmesg-video-lvds2.log - drm errors when forcing LVDS2 on the cmdline
[3] acer_wmi.log - WMI events that land in dmesg
[4] dsdt - /sys/firmware/acpi/tables/DSDT

View attachment "dmesg-DSM-functions.log" of type "text/plain" (1723 bytes)

View attachment "dmesg-video-lvds2.log" of type "text/plain" (2112 bytes)

View attachment "acer_wmi.log" of type "text/plain" (1144 bytes)

Download attachment "dsdt" of type "application/octet-stream" (60508 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ