View Single Post
Old 04-24-06, 01:48 PM   #22
pauljohn
Registered User
 
Join Date: Jul 2005
Posts: 28
Default Re: Suspend/Hibernate - does it work for you?

Fedora core 5

It just worked for me, for the first time in a long time on a Dell Latitude D800 with Nvidia GO5200FX. Here are the changes that coincided with success, although I do not know what worked.


1) Start kernel with agp=off option. Here's the bit from /etc/grub.conf:

title Fedora Core (2.6.16-1.2096_FC5)
root (hd0,2)
kernel /vmlinuz-2.6.16-1.2096_FC5 ro root=LABEL=/ rhgb quiet agp=off
initrd /initrd-2.6.16-1.2096_FC5.img

2) Note the Fedora Kernel was upgraded recently to 2.6.16-1.2096

3). The Nvidia driver is the RPM from rpm.livna.org (suspect result is not affect if you install from Nvidia source)

# rpm -qa | grep nvidia
kmod-nvidia-1.0.8756-1.2.6.16_1.2096_FC5
xorg-x11-drv-nvidia-1.0.8756-1.lvn5

4) My /etc/X11/xorg.conf is here. It has NvAGP set to 1, so we use Nvidia's AGP.


# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 1.0 (buildmeister@builder3) Wed Dec 14 16:39:22 PST 2005
# Xorg configuration created by system-config-display

Section "ServerLayout"
Identifier "single head configuration"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "TouchPad" "AlwaysCore"
InputDevice "Mouse0" "CorePointer"
EndSection

Section "Files"
ModulePath "/usr/lib/xorg/modules/extensions/nvidia"
ModulePath "/usr/lib/xorg/modules"
FontPath "unix/:7100"
EndSection

Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "synaptics"
Load "glx"
EndSection

Section "InputDevice"

# generated from data in "/etc/sysconfig/mouse"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "yes"
Option "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
Identifier "TouchPad"
Driver "synaptics"
Option "Device" "/dev/input/mice"
Option "Protocol" "auto-dev"
Option "LeftEdge" "120"
Option "RightEdge" "890"
Option "TopEdge" "120"
Option "BottomEdge" "650"
Option "FingerLow" "18"
Option "FingerHigh" "19"
Option "MaxTapTime" "180"
Option "MaxTapMove" "110"
Option "EmulateMidButtonTime" "75"
Option "VertScrollDelta" "20"
Option "HorizScrollDelta" "20"
Option "MinSpeed" "0.8"
Option "MaxSpeed" "0.85"
Option "AccelFactor" "0.1"
Option "EdgeMotionMinSpeed" "200"
Option "EdgeMotionMaxSpeed" "200"
Option "UpDownScrolling" "1"
Option "CircularScrolling" "1"
Option "CircScrollDelta" "0.1"
Option "CircScrollTrigger" "2"
Option "ZAxisMapping" "4 5"
Option "SHMConfig" "on"
EndSection

Section "InputDevice"

# generated from data in "/etc/sysconfig/keyboard"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbLayout" "us"
Option "XkbModel" "pc105"
EndSection

Section "Monitor"

# HorizSync 31-90
# VertRefresh 59-70
# 1400x1050 @ 60.00 Hz (GTF) hsync: 65.22 kHz; pclk: 122.61 MHz
# ModeLine "1400x1050_60" 122.61 1400 1488 1640 1880 1050 1051 1054 1087 -HSync +Vsync
## 1400x1050 at 58HZ
# Modeline "1400x1050_c" 118.42 1400 1488 1640 1880 1050 1051 1054 1086 -HSync +Vsync
# ModeLine "1680x1050_60.00" 147.1 1680 1784 1968 2256 1050 1051 1054 1087 -hsync +vsync
### Comment all HorizSync and VertSync values to use DDC:
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
### Comment all HorizSync and VertSync values to use DDC:
HorizSync 30.0 - 110.0
VertRefresh 50.0 - 150.0
Option "DPMS"
EndSection

Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "Unknown video card"
Option "NvAGP" "1"
# Option "RenderAccel" "On"
EndSection

Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "NvAGP" "1"
Option "UseEDID" "TRUE"
## Option "ModeValidation" "NoMaxPClkCheck"
Option "TwinView" "1"
Option "SecondMonitorHorizSync" "31.5 - 90.0"
Option "SecondMonitorVertRefresh" "50.0 - 75.0"
Option "TwinViewOrientation" "Clone"
## Option "MetaModes" "1400x1050,1400x1050;1680x1050,1680x1050; 1280x1024,1280x1024"
SubSection "Display"
Depth 24
Modes "1400x1050" "1280x1024" "1680x1050" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
EndSubSection
EndSection


5) I changed my sleep script in /etc/acpi/actions/sleep.sh like so:

#!/bin/sh
#
# ACPI suspend to ram script
#
# http://www.kananov.com/notes/s3

#Modules to unload before suspend. This are known troublemakers!
MODULES="tg3 uhci_hcd ehci_hcd hci_usb ipw2200"

###if you use linuxant modem drivers you also need this
##MODULES="$MODULES hsfusbcd2 hsfmc97ali hsfmc97via hsfmc97ich hsfpcibasic2 hsfserial hsfengine hsfosspec hsfsoar"



set -x

################################################## ########################
# HELPER FUNCTIONS
################################################## ########################

# function to remove modules
rmmodules () {

for mname in $MODULES ; do
if grep $mname /proc/modules ; then
rmmodule $mname
fi
done

}

# function to remove module and all dependant modeles via recursive calls
rmmodule() {
# module name
m=$1
# get list of dependant modules
dep_m=`lsmod | grep "^$m" | awk ' { print $4}'`
if [ "x$dep_m" != "x" ] ; then
for m1 in $dep_m ; do
rmmodule $m1
done
fi
rmmod $mname
echo modprobe $mname >> /var/run/acpi-resume-post
}


################################################## ########################
# MAIN PART
################################################## ########################


# source sleep config
#. /etc/sysconfig/acpi-sleep

# do not got to suspend mode if some command fails!
set -e

# sync software time to hw
hwclock --systohc

# remove problematic modules
rmmodules

# sync write cache
sync

# sleep
echo mem > /sys/power/state

# reinsert modules
if [ -f /var/run/acpi-resume-post ]; then
sh /var/run/acpi-resume-post &> /dev/null
rm -f /var/run/acpi-resume-post
fi

#
hwclock --hctosys

# restart HAL
service haldaemon restart



6) I do NOT KNOW if the /etc/hibernate settings matter when you do not use hibernate, but I did notice the nvidia module was blacklisted.

in /etc/hibernate/blacklisted-modules, change

# nvidia
to
nvidia

Again, I do not know if the system refers to this

To suspend ALL I DID was use the FN-esc combination. No hibernate script.

open lid wakes up
pauljohn is offline   Reply With Quote