Blank screen after resume - Dell M5510 Ubuntu 16.04

Solution 1:

The solution was ultimately found posted on Sept 18th on the Dell Community Forums. This is ultimately a bios problem: during suspend, an intel register is reset to all 0's. A kernel patch workaround is already in the works, but may not be included until 4.9. However, the register can be saved to a file during suspend and loaded during resume.

Save the following script as /lib/systemd/system-sleep/fixbacklight (and chmod 755)

#!/bin/sh
# From patchwork.freedesktop.org/.../
# and en.community.dell.com/.../19985320
# Suspend Resume fails to restore PWM_GRANUALITY
# Based on script by [email protected]

INTEL_REG=/usr/bin/intel_reg
ADDR="0x000c2000"
SAVE_FILE=/var/lib/systemd/save_intel_reg_pwm_granuality

[ -x "$INTEL_REG" ] || exit 0

case "$1" in
    pre)
        echo "$0: Saving Intel Register PWM_GRANUALITY"
        "$INTEL_REG" read "$ADDR" \
            | (read addr value && echo "$value") \
            >"$SAVE_FILE"
    sync
    ;;
    post)
        value=`cat "$SAVE_FILE" 2>/dev/null`
        if [ -n "$value" ]
        then
            echo "$0: Restoring Intel Register PWM_GRANUALITY $value"
            "$INTEL_REG" write "$ADDR" "$value"
            rm "$SAVE_FILE"
        fi
    ;;
esac

It was @nloewen that pointed me down the right path.

Solution 2:

I had the same problem. Turns out, updating your kernel to the latest recommended kernel in Ubuntu 16.04.3 fixed this for me (after having tried tons of alternative "solutions").

To do this update, run sudo apt install --install-recommends linux-image-generic-hwe-16.04 xserver-xorg-hwe-16.04

Which (at the current moment) installs kernel 4.10. (this kernel update is also suggested in answer https://askubuntu.com/a/823523/647310)