[Pm-utils] keyboard issue when resuming from hibernate/resume
Dominique Michel
dominique.c.michel at gmail.com
Fri Jan 29 08:22:22 PST 2016
Hi all,
With an Acer Aspire, the mouse and the keyboard are dead after
resuming. The loaded modules are:
# lsmod | grep i8042
i8042 13006 1 libps2
# lsmod | grep libps2
libps2 4139 2 atkbd,psmouse
i8042 13006 1 libps2
In /etc/conf.d/modules :
modules="i8042"
- gentoo without systemd and *kit
- At "normal" boot, I use startx, and the keyboard is working fine.
After the launch of X and fvwm-crystal, both the keyboard and the
mouse are OK.
After resuming from hibernation, the keyboard and the mouse are dead
most of the time. An external USB mouse was still working, and after a
few suspend/resume cycles, they come back.
Thanks to the external USB mouse, I was able to narrow the issue to the
atkbd and psmouse module:
# rmmod atkbd; rmmod psmouse
-> keyboard and mouse dead
# modprobe atkbd; modprobe psmouse
-> keyboard and mouse OK
I made /etc/pm/config.d/i8042 :
SUSPEND_MODULES="atkbd psmouse"
But this issue remained the same.
I made /etc/pm/sleep.d/00i8042 :
#!/bin/sh
# Make the f. keyboard and mouse to work
resume_i8042 ()
{
rmmod atkbd
rmmod psmouse
modprobe atkbd
modprobe psmouse
echo "Unloaded-reloaded atkbd and psmouse."
}
case "$1" in
thaw|resume)
resume_modules
;;
*) echo "Nothing to do."
;;
esac
###
This solved the issue. Later, I noticed the typo in the file, it is not
calling resume_i8042 but resume_modules, function which is located
into /usr/lib64/pm-utils/sleep.d/75modules
I changed the file to use resume_i8042, but this was not working, the
keyboard and the mouse was dead after resuming most of the time.
I reverted the change ad removed resume_i8042. The final file is just:
#!/bin/sh
# Make the f. keyboard and mouse to work
case "$1" in
thaw|resume)
resume_modules
;;
*) echo "Nothing to do."
;;
esac
###
I am a pm-utils nob. It look like
the execution of /usr/lib64/pm-utils/sleep.d/75modules comes to early
for my system/hardware. I am even not sure is the real issue is related
to the hardware or the OS.
To call resume_modules in /etc/pm/sleep.d/00i8042 is maybe an overkill,
but it work in my case. Do you have any comment? Or do you want me to
make more testing related to that issue?
Best,
Dominique
More information about the Pm-utils
mailing list