
! On bootup UDEV hang
Finally nailed the problem with udev that made the laptop hang more often than not during bootup.
Change the /etc/init.d/udev script so that the line containing
{{{
/sbin/udevtrigger
}}}
to
{{{
/sbin/udevtrigger --subsystem-nomatch="*misc*"
}}}
! lspci Output
00:00.0 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.1 RAM memory: nVidia Corporation C51 Memory Controller 0 (rev a2)
00:00.2 RAM memory: nVidia Corporation C51 Memory Controller 1 (rev a2)
00:00.3 RAM memory: nVidia Corporation C51 Memory Controller 5 (rev a2)
00:00.4 RAM memory: nVidia Corporation C51 Memory Controller 4 (rev a2)
00:00.5 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.6 RAM memory: nVidia Corporation C51 Memory Controller 3 (rev a2)
00:00.7 RAM memory: nVidia Corporation C51 Memory Controller 2 (rev a2)
00:02.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:03.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:05.0 VGA compatible controller: nVidia Corporation C51 [Geforce 6150 Go] (rev a2)
00:09.0 RAM memory: nVidia Corporation MCP51 Host Bridge (rev a2)
00:0a.0 ISA bridge: nVidia Corporation MCP51 LPC Bridge (rev a3)
00:0a.1 SMBus: nVidia Corporation MCP51 SMBus (rev a3)
00:0a.3 Co-processor: nVidia Corporation MCP51 PMU (rev a3)
00:0b.0 USB Controller: nVidia Corporation MCP51 USB Controller (rev a3)
00:0b.1 USB Controller: nVidia Corporation MCP51 USB Controller (rev a3)
00:0d.0 IDE interface: nVidia Corporation MCP51 IDE (rev f1)
00:0e.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller (rev f1)
00:10.0 PCI bridge: nVidia Corporation MCP51 PCI Bridge (rev a2)
00:10.1 Audio device: nVidia Corporation MCP51 High Definition Audio (rev a2)
00:14.0 Bridge: nVidia Corporation MCP51 Ethernet Controller (rev a3)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
03:00.0 Network controller: Broadcom Corporation BCM94311MCG wlan mini-PCI (rev 01)
07:05.0 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller
07:05.1 Generic system peripheral [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 19)
07:05.2 System peripheral: Ricoh Co Ltd Unknown device 0843 (rev 01)
07:05.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 0a)
07:05.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 05)
! Drivers (Modules) I use
Currently at kernel 2.6.14-rc1-git8
firewire driver : ohci1394
SMBUS : i2c_nforce2
Video driver : nvidia 100.14.19 manually installed because I am using my own kernel and restricted driver manager was brain dead about it.
fbcon and nvidiafb give you nice 1280x800 console, but then you can't use nvidia 3D driver.
usplash stopped working for some reason.
UPDATE: fixed now, was a missing symlink.
Network driver : forcedeth
USB : ohci_hcd
ehci_hcd
Freq. scaling : powernow_k8
Temp. monitor : k8temp
SVM : kvm-amd
Multi card reader : sdhci
Sound : snd-hda-intel
Wireless : bcm43xx
Now I amusing the experimental "b43" driver and it feels much better. This driver has been merged into 2.6.24-rc1.
SATA HDD : sata_nv
PATA DVD-RAM : pata_amd
Modem : Should work with the linuxant drivers. They worked with 2.6.20 but prevented shutdown. On 2.6.22 they cause a hard hang after probing them. Crappy commercial drivers!
Not tested : firewire , pcmcia-express , XD card reader , memory stick reader, expansion port, lightscribe.
Needed : Cracked firmware for the dvd drive.
All FN and multimedia keys work properly.
! Xorg.conf Extras
Option "OnDemandVBlankInterrupts" "True" # said to save battery
Option "AddARGBGLXVisuals" "True"
Option "RenderAccel" "True"
Option "NoRenderExtension" "False"
Option "AllowGLXWithComposite" "True"
Option "DamageEvents" "True"
Option "NvAGP" "0"
Option "NoLogo" "True"
Option "DynamicTwinView" "True"
Option "TripleBuffer" "True"
Option "UseEvents" "True"
! Power management & Suspend hibernate
echo 1 > /sys/devices/system/cpu/sched_mc_power_savings
echo mem > /sys/power/state
echo disk > /sys/power/state
echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
Some moudle options:
options usbcore autosuspend=1
options b43 hwpctl=1 bad_frames_preempt=1
options snd-hda-intel power_save_controller=1
To make HAL use this method move hibernate.sh and sleep.sh from /etc/acpi as well as move /usr/sbin/pmi
You have to make sure bcm43xx is removed before suspending or hibernating otherwise it oopses the kernel badly. I added an rmmod line to /usr/lib/hal/scripts/linux/hal-system-power-suspend-linux and /usr/lib/hal/scripts/linux/hal-system-power-hibernate-linux
If you are using compiz or beryl make sure you enable the sync to vblank option so that the video driver re-initializes after resume.
! Kernel Conf
kernel 2.6.22.6 config : http://phaeronix.net/files/config-2.6.22.6
kernel 2.6.24-rc1-git8 : http://phaeronix.net/files/config-2.6.24-rc1-git8
! HWclock Quirk
Setting the hardware clock causes hard hang. disable the time scripts on startup and shutdown. You have to set the time from the bios.
A good reader, Marcelo, suggested using the 32bit hwclock binary. I am yet to try this.
! Broadcom Wireless quirks
I use the in-kernel bcm43xx driver.
apt-get install bcm43xx-fwcutter , and follow the instructions to download the firmware.
I found this bug http://bugzilla.kernel.org/show_bug.cgi?id=8937 and tried out the patches in there, they seem to make the card perform much more reliably. I need more testing.
UPDATE : YES! this has been included in kernel version 2.6.22.9 Hooray!
UPDATE : the upcoming b43 driver based on the devicescape framework is much better.
! MMC card fix quirk
The multicard reader will ignore MMC cards but work ok with SD and microSD cards. If you do the following then MMC cards should work.
{{{
setpci -s '07:05.0' 0xCA=0x57
setpci -s '07:05.0' 0xCB=0x02
setpci -s '07:05.0' 0xCA=0x00
}}}
This is not needed in 2.6.24-rc1 as there is a special disabler module.
! Thanks thesamo for formatting this page.
| Attachment | Size |
|---|---|
| config-2.6.22.6 | 56.06 KB |
| config-2.6.24-rc1-git8 | 56.67 KB |
Comments
Hibernation
Ok just follow these steps to know if you can get hibernation to work :
Note that all these instructions apply to kernel 2.6.22 , and i haven't tested them on the default 2.6.20
First make sure you have the resume paramater in you kernel commandline check by doing
{{{
cat /proc/cmdline
}}}
you should get something like
{{{
root=something resume=/dev/sda7 ro quiet splash
}}}
The resume parameter needs to point to your swap partition and needs to be big enough.
You can set it in /boot/grub/menu.lst
You have the broadcom wireless right? if so, you have to
{{{
sudo rmmod bcm43xx
}}}
before hibernating.
Then try the following command
{{{
echo disk > /sys/power/state
}}}
If the system goes to hibernation and wakes up properly then you can follow the instructions in the original post to get it to hibernate from gnome-power-manager.
Please do ask again if there is anything you didn't get. :)
hibernation
Hello. You look like you have something useful to tell me about getting my Compaq Presario to hibernate properly. But I don't completely understand how to use the brief notes you have given - can you explain them a bit? Thanks...
Post new comment