SuSE 11.1 resume losing USB keyboard

I have managed to make OpenSuSE mostly work on my HP dv7 1010 laptop, including sound en wifi, but one of the most annoying things left over now is suspend/resume isn’t working right.

I tried it using the method according to this page:
Suspend to RAM - openSUSE

I restarted with boot option init=/bin/bash
and tried s2ram -f -a 3 which turned out to be working best

it goes into sleep well, and comes out when i touch the keyboard

but once it is resumed the keyboard isn’t working anymore (capslock light doesn’t react anymore as well)

On my PC with USB mouse en keyboard i have the exact problem.
On my PC i can unplug en replug the keyboard.
This makes the keyboard work again. Oddly enough, this also registers the mouse again with USB (i didn’t plug that one out)

especially on the laptop his is very annoying because it should go into sleep with low power battery.

I have a custom compiled kernel, so i could experiment with some kernel settings.
With the default kernel i have the same issue.

The laptop has the latest BIOS updates from HP

using the method with “init=/bin/bash” seems not to log anything, and experimenting with a full running X isn’t very desirable.

Any ideas ?

Edit: I tried suspend to RAM on the PC from the KDE menu which seems to be working fine.
Maybe that init=/bin/bash method is deprecated ?
Tomorrow i can try the laptop, but i don’t expect succes.

Ok, it seems to be a laptop problem.
Resume works almost like it should, except for the HID en the ethernet card.
Touching the keyboard or touchpad starts waking up the laptop, so when in sleep it’s still working. After resume the caps lock led is lighted and the screen is black.
When i touch the on/off button, which is set up to shut down the computer, the screen shortly shows the desktop and then starts shutting down

The networkcard is another problem: it’s leaving the card in sleep mode and i have to reboot to Windows to wake it op again.
But i will look at that later.

Here’s the pm-suspend.log

2009-03-05 16:16:18.687068562 +0100: running 'suspend'/'suspend'/'' hooks.
===== 2009-03-05 16:16:18.770252703 running hook: /usr/lib/pm-utils/sleep.d/00clear =====
===== 2009-03-05 16:16:18.877567964 running hook: /usr/lib/pm-utils/sleep.d/01logging =====
suspend initiated: Thu Mar  5 16:16:18 CET 2009

Linux wendy-laptop 2.6.27.19-wendy-lt #1 SMP Thu Feb 26 23:22:04 CET 2009 x86_64 x86_64 x86_64 GNU/Linux
kernel command line: 'root=/dev/disk/by-id/ata-Hitachi_HTS542525K9A300_080801BB6F03WDJYEPEF-part6 resume=/dev/disk/by-id/ata-Hitachi_HTS542525K9A300_080801BB6F03WDJYEPEF-part5 splash=verbose acpi_osi=Linux vga=0x317'
Module                  Size  Used by
ip6t_LOG                8060  10 
xt_tcpudp               3768  30 
xt_pkttype              2232  5 
ipt_LOG                 6684  11 
xt_limit                3324  21 
xt_physdev              2992  2 
af_packet              21976  4 
sco                    12636  2 
bridge                 60088  1 
stp                     3164  1 bridge
llc                     7840  2 bridge,stp
bnep                   15480  2 
rfcomm                 44024  4 
snd_pcm_oss            46784  0 
snd_mixer_oss          18136  1 snd_pcm_oss
l2cap                  25464  16 bnep,rfcomm
snd_seq                64960  0 
snd_seq_device          8940  1 snd_seq
ip6t_REJECT             4568  3 
nf_conntrack_ipv6      17352  6 
ip6table_raw            2520  1 
xt_NOTRACK              2200  4 
ipt_REJECT              3768  3 
xt_state                2648  12 
iptable_raw             2840  1 
iptable_filter          3544  1 
ip6table_mangle         3224  0 
nf_conntrack_netbios_ns     3032  0 
nf_conntrack_ipv4      10888  6 
nf_conntrack           76416  5 nf_conntrack_ipv6,xt_NOTRACK,xt_state,nf_conntrack_netbios_ns,nf_conntrack_ipv4
ip_tables              20488  2 iptable_raw,iptable_filter
ip6table_filter         3384  1 
ip6_tables             22280  4 ip6t_LOG,ip6table_raw,ip6table_mangle,ip6table_filter
x_tables               25056  12 ip6t_LOG,xt_tcpudp,xt_pkttype,ipt_LOG,xt_limit,xt_physdev,ip6t_REJECT,xt_NOTRACK,ipt_REJECT,xt_state,ip_tables,ip6_tables
ipv6                  326728  41 ip6t_REJECT,nf_conntrack_ipv6,ip6table_mangle
cpufreq_conservative     8992  0 
cpufreq_userspace       4380  0 
cpufreq_powersave       2328  0 
powernow_k8            14620  0 
fuse                   63008  3 
loop                   19140  0 
dm_mod                 79152  0 
snd_hda_codec_atihdmi     4344  1 
snd_hda_codec_idt      70488  1 
snd_hda_intel          29928  4 
snd_hda_codec          83256  3 snd_hda_codec_atihdmi,snd_hda_codec_idt,snd_hda_intel
wlan_scan_sta          15640  1 
snd_hwdep               9472  1 snd_hda_codec
ath_rate_sample        15480  1 
snd_pcm                94240  3 snd_pcm_oss,snd_hda_intel,snd_hda_codec
rtc_cmos               12056  0 
uvcvideo               61888  0 
snd_timer              25512  2 snd_seq,snd_pcm
ath_pci               248792  0 
compat_ioctl32          9752  1 uvcvideo
i2c_piix4               9800  0 
rtc_core               20580  1 rtc_cmos
snd                    79656  18 snd_pcm_oss,snd_mixer_oss,snd_seq,snd_seq_device,snd_hda_codec_idt,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer
sr_mod                 17348  0 
btusb                  14320  2 
soundcore               8960  1 snd
videodev               38848  2 uvcvideo,compat_ioctl32
wlan                  266336  4 wlan_scan_sta,ath_rate_sample,ath_pci
rtc_lib                 3736  1 rtc_core
video                  23852  0 
joydev                 12480  0 
fglrx                2342376  27 
ohci1394               33844  0 
output                  3800  1 video
snd_page_alloc         11080  2 snd_hda_intel,snd_pcm
cdrom                  39528  1 sr_mod
ac                      5792  0 
battery                13888  0 
v4l1_compat            17212  2 uvcvideo,videodev
ath_hal               331248  3 ath_rate_sample,ath_pci
wmi                     8128  0 
r8168                  39368  0 
i2c_core               29280  1 i2c_piix4
button                  8280  0 
bluetooth              66372  9 sco,bnep,rfcomm,l2cap,btusb
ieee1394              106496  1 ohci1394
ohci_hcd               27028  0 
ehci_hcd               40932  0 
usbcore               175952  5 uvcvideo,btusb,ohci_hcd,ehci_hcd
sd_mod                 32360  5 
edd                    10832  0 
ext3                  152296  2 
mbcache                10012  1 ext3
jbd                    57248  1 ext3
fan                     6048  0 
ide_pci_generic         4828  0 
atiixp                  4668  0 
ide_core              127964  2 ide_pci_generic,atiixp
ata_generic             6236  0 
pata_atiixp             6328  0 
ahci                   36384  4 
libata                198272  3 ata_generic,pata_atiixp,ahci
scsi_mod              189880  3 sr_mod,sd_mod,libata
dock                   12724  1 libata
thermal                24216  0 
processor              47888  2 powernow_k8,thermal

             total       used       free     shared    buffers     cached
Mem:       2055980    1017608    1038372          0      35852     626244
-/+ buffers/cache:     355512    1700468
Swap:      2104472          0    2104472

===== 2009-03-05 16:16:18.947407844 running hook: /usr/lib/pm-utils/sleep.d/02rtcwake =====
rtcwake alarm not enabled in /etc/pm/config.d/rtcwake.config, doing nothing...
===== 2009-03-05 16:16:18.955237862 running hook: /usr/lib/pm-utils/sleep.d/05led =====
===== 2009-03-05 16:16:19.006308440 running hook: /usr/lib/pm-utils/sleep.d/06autofs =====
===== 2009-03-05 16:16:19.103657287 running hook: /usr/lib/pm-utils/sleep.d/10NetworkManager =====
Error org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
===== 2009-03-05 16:16:19.331922705 running hook: /usr/lib/pm-utils/sleep.d/30s2disk-check =====
===== 2009-03-05 16:16:19.360980914 running hook: /usr/lib/pm-utils/sleep.d/45pcmcia =====
ejecting PCMCIA cards...
===== 2009-03-05 16:16:19.434874996 running hook: /usr/lib/pm-utils/sleep.d/50modules =====
===== 2009-03-05 16:16:19.541596732 running hook: /usr/lib/pm-utils/sleep.d/80acpi-fan =====
===== 2009-03-05 16:16:19.578182070 running hook: /usr/lib/pm-utils/sleep.d/80videobios =====
===== 2009-03-05 16:16:19.602123517 running hook: /usr/lib/pm-utils/sleep.d/94cpufreq =====
===== 2009-03-05 16:16:19.728994709 running hook: /usr/lib/pm-utils/sleep.d/95led =====
===== 2009-03-05 16:16:19.821025849 running hook: /usr/lib/pm-utils/sleep.d/99Zgrub =====
===== 2009-03-05 16:16:19.852567942 running hook: /usr/lib/pm-utils/sleep.d/99info =====
2009-03-05 16:16:19.867937343: done running suspend/suspend hooks.
INFO: going to suspend. In case of problems with the selected suspend options,
INFO: please read /usr/share/doc/packages/pm-utils/README.smart-suspend-to-RAM
INFO: module fglrx is loaded, trusting it to restore video after resume.
+ /usr/sbin/s2ram --force
Switching from vt7 to vt1
fbcon fb0 state 1
fbcon fb0 state 0
switching back to vt7
+ RET=0
+ set +x
2009-03-05 16:16:49.056306321 +0100: running 'suspend'/'resume'/'reverse' hooks.
===== 2009-03-05 16:16:49.360495861 running hook: /usr/lib/pm-utils/sleep.d/99info =====
===== 2009-03-05 16:16:49.405883599 running hook: /usr/lib/pm-utils/sleep.d/99Zgrub =====
===== 2009-03-05 16:16:49.460843700 running hook: /usr/lib/pm-utils/sleep.d/95led =====
===== 2009-03-05 16:16:49.487119548 running hook: /usr/lib/pm-utils/sleep.d/94cpufreq =====
===== 2009-03-05 16:16:49.638215471 running hook: /usr/lib/pm-utils/sleep.d/80videobios =====
===== 2009-03-05 16:16:49.701617739 running hook: /usr/lib/pm-utils/sleep.d/80acpi-fan =====
===== 2009-03-05 16:16:49.755088883 running hook: /usr/lib/pm-utils/sleep.d/50modules =====
===== 2009-03-05 16:16:49.794825637 running hook: /usr/lib/pm-utils/sleep.d/45pcmcia =====
inserting PCMCIA cards...
===== 2009-03-05 16:16:49.835858735 running hook: /usr/lib/pm-utils/sleep.d/30s2disk-check =====
===== 2009-03-05 16:16:49.872579344 running hook: /usr/lib/pm-utils/sleep.d/10NetworkManager =====
Error org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
===== 2009-03-05 16:16:50.142591463 running hook: /usr/lib/pm-utils/sleep.d/06autofs =====
===== 2009-03-05 16:16:50.323165621 running hook: /usr/lib/pm-utils/sleep.d/05led =====
===== 2009-03-05 16:16:50.383815915 running hook: /usr/lib/pm-utils/sleep.d/02rtcwake =====
===== 2009-03-05 16:16:50.415666778 running hook: /usr/lib/pm-utils/sleep.d/01logging =====
===== 2009-03-05 16:16:50.427451994 running hook: /usr/lib/pm-utils/sleep.d/00clear =====
2009-03-05 16:16:50.439076454: done running suspend/resume hooks.

lspci output

00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host Bridge
00:02.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (ext gfx port 0)
00:04.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 0)
00:05.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 1)
00:06.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 2)
00:07.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 3)
00:11.0 SATA controller: ATI Technologies Inc SB700/SB800 SATA Controller [AHCI mode]
00:12.0 USB Controller: ATI Technologies Inc SB700/SB800 USB OHCI0 Controller
00:12.1 USB Controller: ATI Technologies Inc SB700 USB OHCI1 Controller
00:12.2 USB Controller: ATI Technologies Inc SB700/SB800 USB EHCI Controller
00:13.0 USB Controller: ATI Technologies Inc SB700/SB800 USB OHCI0 Controller
00:13.1 USB Controller: ATI Technologies Inc SB700 USB OHCI1 Controller
00:13.2 USB Controller: ATI Technologies Inc SB700/SB800 USB EHCI Controller
00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 3a)
00:14.1 IDE interface: ATI Technologies Inc SB700/SB800 IDE Controller
00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia (Intel HDA)
00:14.3 ISA bridge: ATI Technologies Inc SB700/SB800 LPC host controller
00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge
00:18.0 Host bridge: Advanced Micro Devices [AMD] Family 11h HyperTransport Configuration (rev 40)
00:18.1 Host bridge: Advanced Micro Devices [AMD] Family 11h Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] Family 11h DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] Family 11h Miscellaneous Control
00:18.4 Host bridge: Advanced Micro Devices [AMD] Family 11h Link Control
01:00.0 VGA compatible controller: ATI Technologies Inc Mobility Radeon HD 3400 Series
01:00.1 Audio device: ATI Technologies Inc RV620 Audio device [Radeon HD 34xx Series]
08:00.0 FireWire (IEEE 1394): JMicron Technologies, Inc. IEEE 1394 Host Controller
08:00.1 System peripheral: JMicron Technologies, Inc. SD/MMC Host Controller
08:00.2 SD Host controller: JMicron Technologies, Inc. Standard SD Host Controller
08:00.3 System peripheral: JMicron Technologies, Inc. MS Host Controller
08:00.4 System peripheral: JMicron Technologies, Inc. xD Host Controller
09:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01)
0a:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)

oh, and i have installed the Seife repository for the newest suspend package

Finally, finally it’s solved.

I was wrong presuming it was an USB issue since the keyboard and mouse internally connected to the PS/2 port.

I got the keyboard working with this wake up script in /etc/pm/sleep.d/


#!/bin/bash
case $1 in
    resume)
	echo -n "i8042" > /sys/bus/platform/drivers/i8042/unbind
	echo -n "i8042" > /sys/bus/platform/drivers/i8042/bind
        ;;
    *)  echo "somebody is calling me totally wrong."
        ;;
esac

But in the end all problems where solved with a recent bios-update from HP (version F.43, former version F.35).
It’s definitely worth regular checking for bios updates; Since november i have seen about 4 updates for my new laptop.

Unfortunately you need Windows to run this bios-updates.

Help :’(
my system is

Linux version 2.6.27.29-0.1-default (geeko@buildhost) (gcc version 4.3.2 [gcc-4_3-branch revision 141291] (SUSE Linux) ) #1 SMP 2009-08-15 17:53:59 +0200

on a laptop acer timeline 5810T

I used the above workaround to solve the keybord issue after resume.

Now the keyboard is available but the mouse lost all the feature of the synaptic touchpad. tapping etc…

Is it possible to solve it

maybe you can try reloading the synaptics kernel driver after running the above script and or restarting X

reloading the kernel driver is something like
modprobe -r synaptics (doing as root)