Getting suspend working - Fedora 10 and EeePC
Post date: Feb 19, 2009 3:09:51 AM
I want to get suspend working so I moved to a 2.6.29 kernel to get it working (yes it works!).
so I grabbed the latest kernel sources and built my own kernel for 2.6.29.
Here is the base kernel files to get ... http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.bz2
Here is the 2.6.29-rc4 patch files... http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.29-rc4.bz2
Uncompress both in the same dir (I used the /usr/src/kernels dir ) and do the following...
cd linux-2.6.28
patch -p1 < ../patch-2.6.29-rc4
cd ..
mv linux-2.6.28 linux-2.6.29-rc4
ln -s 2.6.29-rc4
cd linux-2.6.29-rc4
Here are the steps in the build
You might need a few extra packages from yum to get everything building
sudo yum install gtk+-devel gtk2-devel qt3-devel libstdc++-devel gcc-c++ libglade2-devel libglade-devel
maybe others depending on your install (everything needed is in the yum repos)
I put all the sequential commands to build and install the kernel in a script file... also attached a couple of posts below
To be honest... I actually don't 'run' my script. I use it a reference and step through the commands manually.
I then step through the commands....
gedit the Makefile and update the EXTRAVERSION to something you can identify with
- I used '-rc4-eeepc-tbg'
save and close (This extraversion gets automatically appended to the kernel files.)
make mrproper
make xconfig
At the 'make xconfig' step in the build sequence
- load my kernel .config (also attached in a post below) ,
- review and tweak it,
- save and move on.
it will get a working build.
The next step in my build script is OPTIONAL but recommended.
I keep a copy of my .configs in a separate dir as spec'd in my script.
Then follow the rest of the steps.
The 1st time I build, it usually doesn't work, because I missed a needed module in the xconfig step, But I think I got most correct, since everything is working!
I think I left USB-DEBUG message on - You might want to go into the xconfig for usb and turn it off. It fills the syslog.
The last step is to add the grub entries, here are mine (you will have to change based on your kernel name)
My grub.conf
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title My Fedora Console (2.6.29-rc4-eeepc-tbg)
root (hd0,0)
kernel /bzImage-2.6.29-rc4-eeepc-tbg ro root=/dev/sda2 rhgb quiet 3 vga=788
initrd /initrd-2.6.29-rc4-eeepc-tbg.img
title My Fedora GUI (2.6.29-rc4-eeepc-tbg)
root (hd0,0)
kernel /bzImage-2.6.29-rc4-eeepc-tbg ro root=/dev/sda2 rhgb quiet vga=788
initrd /initrd-2.6.29-rc4-eeepc-tbg.img
title STOCK Fedora Console (2.6.27.9-159.fc10.i686)
root (hd0,0)
kernel /vmlinuz-2.6.27.9-159.fc10.i686 ro root=UUID=a13e6408-fc51-4a3c-ae2a-c3436bf5829f rhgb quiet 3
initrd /initrd-2.6.27.9-159.fc10.i686.img
title STOCK Fedora GUI (2.6.27.9-159.fc10.i686)
root (hd0,0)
kernel /vmlinuz-2.6.27.9-159.fc10.i686 ro root=UUID=a13e6408-fc51-4a3c-ae2a-c3436bf5829f rhgb quiet vga=788
initrd /initrd-2.6.27.9-159.fc10.i686.img
NOTE: I have some choices to boot to a console login (no x/Gnome login) in case of 'issues' I need to debug.
Once you are done you will have a new choice in your grub boot menu.
Its harmless to your existing system kernel.
Note: 2.6.29-rc4 has some notable EeePC specific improvements (from the kernel.org changelog)
eeepc-laptop: use netlink interface
eeepc-laptop: Implement rfkill hotplugging in eeepc-laptop
eeepc-laptop: Check return values from rfkill_register
eeepc-laptop: Add support for extended hotkeys
I now have a F10 system that suspends & resumes with everything working as they were before the suspend (wireless, video, touchpad, audio...)
The EeePC keys even work and I can use the <Fn-F2> key to toggle the wireless.
NOTE: I just found that having compiz desktop effects hangs when resuming. I don't know why... so I just turn it off.