1

WHen I close the lid, it suspends, but when I open it again, the screen stays full black. If I hit the power button, occasionally it will come back to life but sometimes i have to force a reboot unfortunately.

Luís de Sousa
  • 13,018
  • 25
  • 77
  • 128
Jonathan
  • 3,804
  • 5
  • 29
  • 51
  • What are you actually suspending? Chrome OS or the chrooted Ubuntu environment? This would be similar to asking why a VM acts erratic during suspend and resume of the host. You are not running a supported installation of Ubuntu when you run Chrubuntu or crouton. – LiveWireBT Dec 17 '14 at 10:38
  • I don't use Crouton or the host OS. I think you are confusing Crouton and Chrubuntu. Chrubuntu is a seperate partition that boots via SeaLion which in turn boots grub and is the full blown Linux kernal running ubuntu with it's own drivers and everything. It has no memory sharing with ChromeOS, like Crouton does. – Jonathan Dec 17 '14 at 17:41
  • No offense, I'm quite happy to be proven wrong by you. It has not gotten to my attention that there was such a script that does that. I was always searching for a project site and only found one for crouton, apparently there is only a blog http://chromeos-cr48.blogspot.de/2013/10/chrubuntu-for-new-chromebooks-now-with.html to add to the confusion there is another one that also advertises crouton http://chrubuntu.blogspot.ca/ **vote to close retracted** – LiveWireBT Dec 17 '14 at 18:12
  • 1
    It's very confusing, I admit. To learn more about Chrubuntu, check out the resources at the bottom of the readme here: https://github.com/eyecreate/ubuntu-chromebook-installer – Jonathan Dec 18 '14 at 01:50
  • I just found this in one of the links: http://realityequation.net/installing-elementary-os-on-an-hp-chromebook-14 *"Step 4: Solve issue with suspend"* Have you checked that? – LiveWireBT Dec 18 '14 at 12:33
  • ^ I Hear that was the official way to do it, but someone found a 'newer way' since. I just posted the asnwer below. THanks for the help!! – Jonathan Dec 18 '14 at 19:34

1 Answers1

1

All thanks to linvinus on reddit: How to make hibernate working in ubuntu 14.04 on Acer c720

How to make hibernate working in ubuntu 14.04 on Acer c720, tested in HP Chromebook 14 on Ubuntu 14.10 kernel 3.17 as well, works. He has Lubuntu 14.04 kernel 3.13.0-24-generic c720 2G. For Debian, Arch, or Xubuntu, there are more instructions in the source link.

Takes about 5 mins to do, but works like a charm for me,

  1. create file

    sudo nano /etc/initramfs-tools/scripts/init-top/unbind_ehci
    

    with following content

    #####################
    #!/bin/sh
    PREREQ=""
    
    prereqs()
    {
            echo "${PREREQ}"
    }
    
    case ${1} in
            prereqs)
                    prereqs
                    exit 0
                    ;;
    esac
    
    log_success_msg "Unbind ehci for preventing error"
    echo -n "0000:00:1d.0" > /sys/bus/pci/drivers/ehci-pci/unbind
    exit 0
    #################
    

    change mode

    sudo chmod a+x /etc/initramfs-tools/scripts/init-top/unbind_ehci
    
  2. create udev rule

    sudo nano /etc/udev/rules.d/10_disable-ehci.rules
    
    ACTION=="add", SUBSYSTEM=="pci", DRIVER=="ehci_hcd", \
        RUN+="/bin/sh -c 'echo -n %k > %S%p/driver/unbind'"
    
  3. update initramfs

    sudo update-initramfs -k all -u
    
  4. this script will fix touchpad after resume

    sudo nano /etc/pm/sleep.d/99zcyapa
    

    with following content

    #####################
    #!/bin/bash -x
    # File: "/etc/pm/sleep.d/99_cyapa".
    case "${1}" in
            hibernate)
          /sbin/rmmod cyapa
                    ;;
      resume|thaw)
              COUNTER=0
              while [  $COUNTER -lt 10 ]; do
                            date >>/tmp/99_cyapa
                            /sbin/modprobe cyapa
              sleep 1
              dmesg | grep cyapa | tail -1 | grep error >/dev/null
              RES=$?
              echo "res=$RES"
              if [ ${RES} -ne 1 ] ; then
                  /sbin/rmmod cyapa
                  sleep 1
              else
                  #done
                  COUNTER=11
              fi
    
                      COUNTER=`expr $COUNTER + 1`
              done
          ;;
    esac
    exit 0
    #################
    

    Change mode!

    sudo chmod a+x /etc/pm/sleep.d/99zcyapa
    
  5. ensure that in you have tpm_tis.interrupts=0

    sudo nano /etc/default/grub
    

    there is my settings

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash  boot=local  i915.modeset=1 tpm_tis.interrupts=0 "
    

    update grub

    sudo update-grub2
    

    Reboot

Again thanks to linvinus on reddit

LiveWireBT
  • 28,405
  • 26
  • 107
  • 221
Jonathan
  • 3,804
  • 5
  • 29
  • 51