After some more sleuth work with NVIDIA, we've discovered that this is happening because of a RANDR event. An X client is responding to the RANDR events and forcing it to this NULL resolution.
I checked what clients were running, and it's xfsettingsd causing this problem. If I kill xfsettingsd prior to turning on/off my TV it comes back at the right resolution. ** Also affects: xfce4-settings (Ubuntu) Importance: Undecided Status: New ** Changed in: xfce4-settings (Ubuntu) Status: New => Confirmed ** Changed in: nvidia-graphics-drivers (Ubuntu) Status: Confirmed => Invalid ** Changed in: nvidia-graphics-drivers-331 (Ubuntu) Status: Confirmed => Invalid ** Changed in: mythbuntu Status: New => Confirmed ** Changed in: mythbuntu Importance: Undecided => Medium ** Summary changed: - HDMI Handshake fails after TV powered off + Xfce resets TV mode to NULL when power cycled ** Description changed: - I had an HTPC with Mythbuntu 12.04 installed and all included NVIDIA 185 - driver package. Connected to the HTPC is an audio receiver and from the - audio receiver a TV. - - I had no problems on NVIDIA 185. - - Since upgrading to 14.04 I have tried both the 304.117 driver as well as - the 331.38 driver. Both have a new behavior that if the TV is power - cycled it no longer detects a link. + I had an HTPC with Mythbuntu 12.04 installed. Upon upgrading a new + behavior that if the TV is power cycled it no longer detects a link with + the HTPC. When this happens I can find in the xorg log that there is an accompanying log item: [ 39829.509] (II) NVIDIA(0): Setting mode "NULL" - Upon recommendations from the internet i've captured the EDID, tried to - hardcode the metamodes in the xorg conf, and regenerated the xorg conf - using nvxconfig to no avail. The problem persists. + After debugging with NVIDIA at + https://devtalk.nvidia.com/default/topic/729955/linux/tv-stops-being- + detected/ we've deteremined it's a X client that reacts to the RANDR + events causing the mode to be set to NULL. - Here is my original functional xorg.conf from 12.04 w/ NVIDIA 185: - ============================== - Section "Screen" - Identifier "Default Screen" - DefaultDepth 24 - EndSection + Working through the list in an Xfce environment, the culprit is + xfsettingsd. If xfsettingsd is running, it causes the TV to come up in + a NULL mode. If it's killed, it remains in the mode it was previously + running in. - Section "Device" - Identifier "Default Device" - Driver "nvidia" - Option "DPI" "100x100" - Option "NoLogo" "1" - EndSection - Section "Extensions" - Option "Composite" "Disable" - EndSection - ============================== - - Here is the xorg conf I've cluttered all the workarounds on the internet that still doesn't fix the problem: - ============================== - Section "Monitor" - # HorizSync source: edid, VertRefresh source: edid - Identifier "Monitor0" - VendorName "Unknown" - ModelName "SONY AVAMP" - HorizSync 31.0 - 82.0 - VertRefresh 57.0 - 63.0 - Option "DPMS" - EndSection - - Section "Device" - Identifier "Device0" - Driver "nvidia" - VendorName "NVIDIA Corporation" - BoardName "GeForce 9500 GT" - Option "DPI" "100x100" - Option "NoLogo" "1" - Option "ConnectedMonitor" "DFP-1" - Option "CustomEDID" "DFP-1:/etc/X11/edid.bin" - Option "UseEDID" "True" - EndSection - - Section "Screen" - Identifier "Screen0" - Device "Device0" - Monitor "Monitor0" - DefaultDepth 24 - Option "Stereo" "0" - Option "metamodes" "1920x1080 +0+0" - Option "SLI" "Off" - Option "MultiGPU" "Off" - Option "BaseMosaic" "off" - SubSection "Display" - Depth 24 - EndSubSection - EndSection - - Section "Extensions" - Option "Composite" "Disable" - EndSection - ============================== - - I have discovered that this behavior can be worked around with a simple shell script: + Until this is fixed, this behavior can be worked around with a simple shell script: ============================== #!/bin/sh #Fix TV state when HDMI link is lost. #By Mario Limonciello <supe...@ubuntu.com> OUTPUT="HDMI-0" BAD_MODE="1280x720" GOOD_MODE="1920x1080" for MODE in $BAD_MODE $GOOD_MODE; do - DISPLAY=:0 xrandr --output $OUTPUT --mode $MODE - sleep 2 + DISPLAY=:0 xrandr --output $OUTPUT --mode $MODE + sleep 2 done ============================== -- You received this bug notification because you are a member of Ubuntu-X, which is subscribed to nvidia-graphics-drivers in Ubuntu. https://bugs.launchpad.net/bugs/1308105 Title: Xfce resets TV mode to NULL when power cycled To manage notifications about this bug go to: https://bugs.launchpad.net/mythbuntu/+bug/1308105/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~ubuntu-x-swat Post to : ubuntu-x-swat@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-x-swat More help : https://help.launchpad.net/ListHelp