https://bugzilla.kernel.org/show_bug.cgi?id=83651
Bug ID: 83651 Summary: radeon: kernel returns invalid information about video connectors' status Product: Drivers Version: 2.5 Kernel Version: 3.16.1 Hardware: All OS: Linux Tree: Mainline Status: NEW Severity: normal Priority: P1 Component: Video(DRI - non Intel) Assignee: drivers_video-dri@kernel-bugs.osdl.org Reporter: newgarry@mail.ru Regression: No
Information obtained from kernel sys subsystem about ATI HD 5650 card's connectors status doesn't reflects real existing situation. That prevents higher level systems using the obtained information from working correctly.
For example, systemd uses that information to decide what to do on lid close event (related bug report, https://bugs.freedesktop.org/show_bug.cgi?id=76267#c13).
My laptop have hybrid video configuration (Intel + discrete ATI). The discrete ATI card is always powered off by init script via vgaswitcheroo interface on system boot. There aren't external connected monitors.
Following is the valid report from kernel about the Intel card after system boot:
# cat /sys/class/drm/card0-LVDS-1/status connected
# cat /sys/class/drm/card0-VGA-1/status disconnected
Following is the invalid report from kernel about the ATI card after system boot:
# cat /sys/class/drm/card1-LVDS-2/status connected
# cat /sys/class/drm/card1-VGA-2/status connected
# cat /sys/class/drm/card1-HDMI-A-1/status disconnected
Report from vgaswitcheroo interface:
# cat /sys/kernel/debug/vgaswitcheroo/switch 0:IGD:+:Pwr:0000:00:02.0 1:DIS: :Off:0000:01:00.0 2:DIS-Audio: :Off:0000:01:00.1
lspci:
# lspci | grep -i vga 00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 18) 01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M] (rev ff)
# lspci -n | grep 0300 00:02.0 0300: 8086:0046 (rev 18) 01:00.0 0300: 1002:68c1 (rev ff)
Kernel: 3.16.1
Thank you in advance!
https://bugzilla.kernel.org/show_bug.cgi?id=83651
Alex Deucher alexdeucher@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |alexdeucher@gmail.com
--- Comment #1 from Alex Deucher alexdeucher@gmail.com --- Please attach your dmesg output and xorg log.
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #2 from Garri g.djavadyan@gmail.com --- Created attachment 149441 --> https://bugzilla.kernel.org/attachment.cgi?id=149441&action=edit journalctl -b -k
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #3 from Garri g.djavadyan@gmail.com --- Created attachment 149451 --> https://bugzilla.kernel.org/attachment.cgi?id=149451&action=edit journalctl -b _EXE=/usr/bin/Xorg _PID=2217
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #4 from Garri g.djavadyan@gmail.com --- Created attachment 149461 --> https://bugzilla.kernel.org/attachment.cgi?id=149461&action=edit journalctl -b _EXE=/usr/bin/Xorg _PID=7729
https://bugzilla.kernel.org/show_bug.cgi?id=83651
Renato barbieri.renato@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |barbieri.renato@gmail.com
--- Comment #5 from Renato barbieri.renato@gmail.com --- Hi there,
I've got the same problem and, as reported above, suspend on lid closing isn't working.
Here are the reports about the INTEL and AMD card, respectively:
cat /sys/class/drm/card0-LVDS-1/status connected
cat /sys/class/drm/card0-VGA-1/status disconnected
cat /sys/class/drm/card1-VGA-2/status disconnected
cat /sys/class/drm/card1-LVDS-2/status connected
cat /sys/class/drm/card1-HDMI-A-1/status disconnected
I'm on Archlinux, with 3.14.18-1-lts kernel.
Any ideas? Thanks!
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #6 from Alex Deucher alexdeucher@gmail.com --- The lid issue is more semantic. The display is still connected even when the lid is closed so it should still report as connected. It's up to the desktop environment to decide what to do when they get a lid event.
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #7 from Garri g.djavadyan@gmail.com --- (In reply to Alex Deucher from comment #6)
The lid issue is more semantic. The display is still connected even when the lid is closed so it should still report as connected. It's up to the desktop environment to decide what to do when they get a lid event.
Alex, is your reply addressed to the comment 5 or to the bug report generally?
Thanks.
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #8 from Alex Deucher alexdeucher@gmail.com --- Comment 5 specifically.
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #9 from Alex Deucher alexdeucher@gmail.com --- Well, about lids in general.
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #10 from Garri g.djavadyan@gmail.com --- Created attachment 154661 --> https://bugzilla.kernel.org/attachment.cgi?id=154661&action=edit dmesg_xorg_log.tgz
There are no problems when the hybrid graphics is disabled in BIOS.
# cat /sys/class/drm/card0-LVDS-1/status connected # cat /sys/class/drm/card0-VGA-1/status disconnected # cat /sys/class/drm/card0-HDMI-A-1/status disconnected
Reported information is correct. Suspend on LID close works fine. Kernel and Xorg logs are attached.
https://bugzilla.kernel.org/show_bug.cgi?id=83651
--- Comment #11 from Renato barbieri.renato@gmail.com --- (In reply to Alex Deucher from comment #8)
Comment 5 specifically.
I agree that it is up to the desktop environment, but, as stated in comment 1 if the kernel reports two screen attached, systemd wont't suspend because it thinks there's still a display that's active.
Anyway, the issue is specifically the wrong number of connected displays detected by the kernel.
Or I'm missing something?
Cheers.
dri-devel@lists.freedesktop.org