On Thu, Jul 5, 2018 at 5:37 PM, Jani Nikula jani.nikula@intel.com wrote:
On Thu, 05 Jul 2018, Chris Wilson chris@chris-wilson.co.uk wrote:
Quoting Jani Nikula (2018-07-05 09:58:57)
On Thu, 05 Jul 2018, Chris Chiu chiu@endlessm.com wrote:
Hi, We have few ASUS laptops X705FD (The new WiskyLake), X560UD (intel i5-8250U), X530UN (intel i7-8550U) share the same problem, which is the HDMI connector status stays connected even the HDMI cable has been unplugged. Look into the "/sys/class/drm/card0-HDMI-A-1/status" for checking the status while plug/unplug the HDMI, it shows "disconnected" before plug in HDMI cable, then switch to "connected" after plugin, and still stay "connected" after unplug. This would cause the audio output path cannot correctly switch from HDMI to internal speaker after unplugging the HDMI.
I then try to verify with the latest kernel 4.18.0-rc3+, the bug still present. The full "dmesg" log is here. https://gist.github.com/mschiu77/d761d7c5cf191b7868d4d7788ae087f1
The HDMI cable is plugged in at ~26th second. "[ 26.214371] [drm:drm_detect_monitor_audio [drm]] Monitor has basic audio support" then unplug the HDMI at ~73th second. "[ 73.328361] [drm:drm_detect_monitor_audio [drm]] Monitor has basic audio support"
Please advise what I can do to fix this. Thanks
Seems rather odd. Please file a bug report at [1]. Attach the dmesg on the bug. Please attach 'xrandr --verbose' output before and after unplugging on the bug.
Note that 'xrandr --verbose' will trigger a reprobe of the devices, papering over any missed probe following hotplug. I would suggest preceding with 'xrandr --current --verbose'.
If all you are doing is checking status, you need to 'echo detect > status' to trigger a reprobe after hotplug.
It's interesting that reprobe triggered by 'xrandr --verbose' after unplug will get the status back to "disconnected". But if I just do 'xrandr --current --verbose' before and after unplugging the cable, the output shows the same status 'connected'.
Here's the output of 'xrandr --verbose' before unplugging HDMI https://gist.github.com/mschiu77/ea2e843078297f344596243418dcdaf7
And the output of 'xrandr --current --verbose' after unplugging the cable https://gist.github.com/mschiu77/55756c0801046d49cd9bc3f87712b079
Then do 'xrandr --current --verbose' to trigger reprobe, the ouput https://gist.github.com/mschiu77/72e6ab5438cbe64443300fc4fd71770c
It means that the HDMI unplug not detected by the driver?
Chris
I was curious about the logs seemingly indicating that we can read the EDID even after the user says they've unplugged the cable. The updating of sysfs status attribute is another matter.
BR, Jani.
-- Jani Nikula, Intel Open Source Graphics Center