I just bought this laptop yesterday. I’ve just solved issue 1 of 3 (all issues as of 26/7/11)
1. Touchpad isn’t recognised as a touchpad but rather a mouse and so can’t “disable touchpad while typing” causing me to constantly bump it.
2. Suspend / Resume isn’t working.. I will fix this soon (fixed: 26/07/11)
3. Slight high-pitched noise coming from built-in mic. (fixed: 26/07/11)
4. Don’t run ecrypt-fs on your /home partition. It causes a lot of freezing.
5. My grub config now /etc/default/grub now has the following. The semaphore line fixes some small temporary locks in 3D graphics. ie: if you run glxgears and it freezes every 10 seconds or so, the semaphores line fixes that. The pcie_aspm=force switch is supposed to fix the 2.6.38 kernel issue consuming up to 30% more power. I haven’t noticed a great difference though. I get about 4.5 hours of continuous use. Remember to run grub-update after making the changes.
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.semaphores=1 pcie_aspm=force"
So, fixing number 1 took a few goes to track down. Basically, the kernel isn’t detecting the Touchpad properly and everything loads as a mouse.
You need to rebuild the mouse kernel module, so combine the steps from this url
http://ubuntuforums.org/showthread.php?p=9175201#post9175201
but when you get to Step 5, use this patch instead:
wget -O 01elantech_2.6.38.patch https://launchpadlibrarian.net/71387234/01elantech_2.6.38.patch
patch -p1 < 01elantech_2.6.38.patch
You will probably have to: sudo apt-get install gsynaptic also.
Update: 26/07/11
Finally, the suspend issue bugged me enough to find an answer. Following the steps in this post to get pm-suspend to finally work did the trick!
ls /sys/bus/pci/drivers/ehci_hcd/
Gives me:
0000:00:1a.0
0000:00:1d.0
Replace below XXXX:XX:XX.X with your
#!/bin/sh
# File: "/etc/pm/sleep.d/20_custom-ehci_hcd".
case "${1}" in
hibernate|suspend)
# Unbind ehci_hcd for first device XXXX:XX:XX.X:
echo -n "XXXX:XX:XX.X" | tee /sys/bus/pci/drivers/ehci_hcd/unbind
# Unbind ehci_hcd for second device XXXX:XX:XX.X:
echo -n "XXXX:XX:XX.X" | tee /sys/bus/pci/drivers/ehci_hcd/unbind
;;
resume|thaw)
# Bind ehci_hcd for first device XXXX:XX:XX.X:
echo -n "XXXX:XX:XX.X" | tee /sys/bus/pci/drivers/ehci_hcd/bind
# Bind ehci_hcd for second device XXXX:XX:XX.X:
echo -n "XXXX:XX:XX.X" | tee /sys/bus/pci/drivers/ehci_hcd/bind
;;
esac
And then add
#File: "/etc/pm/config.d/usb3-suspend-workaround".
SUSPEND_MODULES="xhci"