Radeon 3650HD laptop LVDS lid open/closed detection problem

Alex Deucher alexdeucher at gmail.com
Mon Jul 12 10:37:28 PDT 2010


On Mon, Jul 12, 2010 at 12:59 PM, Pasi Kärkkäinen <pasik at iki.fi> wrote:
> On Mon, Jul 12, 2010 at 10:48:08AM -0400, Alex Deucher wrote:
>> On Mon, Jul 12, 2010 at 7:53 AM, Pasi Kärkkäinen <pasik at iki.fi> wrote:
>> > On Mon, Jun 21, 2010 at 11:12:51AM -0400, Alex Deucher wrote:
>> >> On Mon, Jun 21, 2010 at 10:53 AM, Francisco Jerez <currojerez at riseup.net> wrote:
>> >> > Jerome Glisse <glisse at freedesktop.org> writes:
>> >> >
>> >> >> On Mon, Jun 21, 2010 at 03:31:19PM +0300, Pasi Kärkkäinen wrote:
>> >> >>> Hello,
>> >> >>>
>> >> >>> After fixing the dvi/hdmi detection problem I now have another problem
>> >> >>> with the HP EliteBook 8530p, which has Radeon 3650HD adapter.
>> >> >>>
>> >> >>> Here's a summary of the environment:
>> >> >>>
>> >> >>>      - laptop connected to a docking station.
>> >> >>>      - external display in use, connected with DVI to the dock.
>> >> >>>      - laptop lid closed, so internal LVDS display is not used.
>> >> >>>
>> >> >>> Now, when I start the laptop, I can see the BIOS and grub on the external DVI display.
>> >> >>> All fine so far. I select the Fedora 13 kernel, and Linux starts. I see the Fedora
>> >> >>> graphical boot on the external DVI display, just like it should be. GDM login prompt
>> >> >>> appears on the external DVI display, still everything fine.
>> >> >>>
>> >> >>> And then it goes wrong. After I login to X, the external display only shows the background
>> >> >>> picture.. it turns out the desktop stuff has been started to the internal LVDS display,
>> >> >>> which shouldn't be used at all since the laptop lid is closed!!
>> >> >>>
>> >> >>> When the laptop lid is closed, and external display is connected, I want to use only the external display..
>> >> >>>
>> >> >>> Any ideas how to troubleshoot this one?
>> >>
>> >> Does it work ok if you boot up without the external display connected
>> >> and then connect and enable the secondary display after you've logged
>> >> in?
>> >>
>> >
>> > I just tried this.
>> >
>> > I boot up the laptop with lid open, so ONLY the internal LVDS is active
>> > (DVI cable disconnected), and I get the GDM login prompt on the internal LVDS.
>> >
>> > Then I plug in the external DVI display, and the external display
>> > gets automatically active when X starts. Gnome panel etc are on the internal LVDS,
>> > external DVI display only has the background image and nothing else.
>> >
>> > So that works as expected. No problems there.
>> >
>> >>  I have a similar issue here;  I think it's an issue with rhgb and
>> >> starting X.  If I boot with an external display, the entire plymouth
>> >> load sequence works fine, but then when X starts the external display
>> >> goes blank and the internal display hangs on the plymouth screen.  On
>> >> a related note, if I close the lid and turn off the LVDS output, gpm
>> >> never blanks the external monitor.  I have to manually force dpms with
>> >> xset.
>> >>
>> >
>> > The other patch (0001-drm-radeon-kms-fix-shared-ddc-handling.patch) applied
>> > my system mostly works now, but here's a summary about the problem I still have
>> > with the lid detection:
>> >
>> > - I boot up the laptop with lid closed (LVDS inactive) so there's only external
>> > DVI display connected. Kernel boot messages show up on the external DVI display,
>> > and GDM login prompt appears on the external DVI display. All fine so far.
>> >
>> > - The actual problem: when X starts gnome panel etc show up on the internal LVDS
>> > display, which I can't see at all since the lid is closed! So those should go to the
>> > external DVI display only.. LVDS should be disconnected or inactive or something..
>> >
>> > Any pointers appreciated where to look at in the source.. I can do some debugging.
>>
>> Your desktop session manager should check the lid status when it loads
>> and attempt to do the right thing if there is an external monitor
>> detected.
>>
>
> Ok.
> So you think it's not a bug in the lid detection?

Not sure.  That's handled by apci, not the video driver.  You can
check it the lid is producing proper events by running:
cat /proc/acpi/button/lid/LID/state
with the lid open and closed.  The desktop manager decides what the
policy is for the lid (blank display, suspend, turn off the connector,
etc.).  It should also take into account other connected outputs, but
I don't think it handles that too well at the moment.

Alex


More information about the dri-devel mailing list