Page 1 of 5 123 ... LastLast
Results 1 to 10 of 49

Thread: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 controller

  1. #1

    Exclamation HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 controller

    0. UPDATES
    Added "" around the parameter $1 for compatibility as pointed out by mikkle.

    1. WHO IS THIS FOR

    This HOWTO applies to laptops based on Intel chipset which have their keyboard and/or touchpad connected to i8042 controller. You could find if you have one of those by running:
    Code:
    sudo lshal | grep i8042
    If this spits anything then you do have an i8042 controller.

    USE IF:
    This HOWTO will most probably help you IF:
    Your laptop resumes/thaws with frozen keyboard and/or touchpad AND a newly connected USB mouse/keyboard works AND your laptop has an i8042 controller.

    This HOWTO MAY help you IF:
    You don't know if you have i8042 controller and your laptop exhibits the aforementioned behaviour. You can try and see if it fixes your problem. Report back if it did.

    DO NOT USE IF:
    This HOWTO will NOT help you IF:
    Your laptop resumes AND newly connected USB keyboard/mouse DO NOT work.
    In this case you probably suffer from a resume failure which causes your whole system to be frozen.

    This HOWTO will NOT help you IF:
    Your touchpad and/or keyboard do not work at all after a fresh boot.
    In this case you probably have a problem related to i8042 but NOT this one. There are people around who have ideas on workarounding that. Use the amazing Search button of these forums. You might find a miracle!

    2. WHAT THE PROBLEM CONSISTS OF

    This is a bug somehow related with the i8042 controller found in many Intel based laptops on the market. I do not know why it happens and how exactly the bug works but I know how to workaround it.

    This bug appeared in Intrepid Ibex for me and this workaround circulated in the forum at that time in one form or another. Later it disappeared in Jaunty for me so I have completely forgotten about it until now. In Karmic it presents itself in exactly the same way as in Intrepid which is as follows:

    2.1. Suspend/Hibernate the laptop
    2.2. Resume/Thaw the laptop
    2.3. Repeat until the keyboard and/or touchpad is frozen

    3. HOW TO FIX IT

    In order to fix this we need to unbind the controller on suspend/hibernate and later re-bind it on resume/thaw. Pm-utils provides us with a framework which can execute shell scripts on suspend/hibernate/resume/thaw. Our solution is in the form of one such script and all we need to do is - put it in the right place for Pm-utils to execute. We do that following these steps:

    3.1. Download the script:
    >>Download<< Save it to your home folder. The following instructions assume that.
    3.2. Open a Terminal (GNOME: Alt+F2 > gnome-terminal) and go to your home directory:
    Code:
    cd ~
    3.3. Make the script executable:
    Code:
    chmod +x 01i8042
    3.4. Move it to the Pm-utils user hooks folder:
    Code:
    sudo mv 01i8042 /etc/pm/sleep.d/
    DONE

    4. EXPECTED RESULTS

    Your laptop should no more resume/thaw with frozen keyboard and/or touchpad.
    Last edited by lightrush; November 24th, 2009 at 07:31 PM. Reason: Updated

  2. #2
    Join Date
    Nov 2009
    Beans
    1

    Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    Works like a charm!

    I have experienced the exact behaviour you outline, with the exact same history, even.
    I'm running Ubuntu on a Lenovo T61, for the record.
    This fix really, really saved my day! Cheers!

    Had to change
    Code:
    case $1 in
    to
    Code:
    case "$1" in
    in the script, though. Otherwise it never triggered.

    Thanks heaps!

    :O) Mikkle
    Last edited by mikkle; November 18th, 2009 at 10:08 PM.

  3. #3

    Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    Hm interesting, these $1 and "$1" have to be equivalent ... and I swear it works w/o "" on mine but for the sake of your experience I will update the script with "" .

  4. #4
    Join Date
    Jan 2007
    Beans
    Hidden!
    Distro
    Ubuntu Development Release

    Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    Worked on a Lenovo N100 - Thanks!
    New to Wayland.

    Retired.

  5. #5
    Join Date
    Aug 2009
    Beans
    2

    Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    Works great on my HP Pavilion dv7 Laptop with Kubuntu 9.10 - thanks!

  6. #6
    Join Date
    Jul 2006
    Location
    Jakarta
    Beans
    16
    Distro
    Ubuntu 10.10 Maverick Meerkat

    Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    I followed your steps, but it didn't work out.
    The output of sudo lshal | grep i8042:
    Code:
      info.linux.driver = 'i8042 aux'  (string)
      info.linux.driver = 'i8042 kbd'  (string)
    udi = '/org/freedesktop/Hal/devices/platform_i8042'
      info.linux.driver = 'i8042'  (string)
      info.product = 'Platform Device (i8042)'  (string)
      info.udi = '/org/freedesktop/Hal/devices/platform_i8042'  (string)
      linux.sysfs_path = '/sys/devices/platform/i8042'  (string)
      platform.id = 'i8042'  (string)
    udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port'
      info.parent = '/org/freedesktop/Hal/devices/platform_i8042'  (string)
      info.product = 'i8042 KBD port'  (string)
      info.udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port'  (string)
      linux.sysfs_path = '/sys/devices/platform/i8042/serio0'  (string)
      serio.description = 'i8042 KBD port'  (string)
    udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port_logicaldev_input'
      info.parent = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port'  (string)
      info.udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port_logicaldev_input'  (string)
      input.originating_device = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port'  (string)
      linux.sysfs_path = '/sys/devices/platform/i8042/serio0/input/input4/event4'  (string)
    but still it didn't work out...

  7. #7

    Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    Quote Originally Posted by kruzztee View Post
    I followed your steps, but it didn't work out.
    The output of sudo lshal | grep i8042:
    Code:
      info.linux.driver = 'i8042 aux'  (string)
      info.linux.driver = 'i8042 kbd'  (string)
    udi = '/org/freedesktop/Hal/devices/platform_i8042'
    ...
    but still it didn't work out...
    Did you try plugging USB mouse/keyboard after resuming? If those do not work then probably your computer is frozen and not just the touchpad/keyboard. Alternatively it is possible that the problem you experience is not related to this issue and just exhibits the same symptoms.

  8. #8
    Join Date
    Jul 2006
    Location
    Jakarta
    Beans
    16
    Distro
    Ubuntu 10.10 Maverick Meerkat

    Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    The problem is that my touchpad not detected from the start of ubuntu. I already tried to follow nomux solution but it didn't work.. My touchpad detected as Macintosh Emulation.
    This bug is kinda depressing considering I used a netbook.

  9. #9

    Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    Quote Originally Posted by kruzztee View Post
    The problem is that my touchpad not detected from the start of ubuntu. I already tried to follow nomux solution but it didn't work.. My touchpad detected as Macintosh Emulation.
    This bug is kinda depressing considering I used a netbook.
    Lame... Well then the issue is definitely different. I can recall that someone used i8042.reset as a kernel parameter for something like this. Don't take my words literaly since the right command might not have been exactly that, but do search for "i8042" and "reset" and you might find something interesting. Dismiss what I said if you have already tried that.

    Alternatively you could try compiling latest mainline kernel or try compile 2.6.28 (presumably that one worked for you).

  10. #10
    Join Date
    Nov 2009
    Beans
    3

    Angry Re: HOWTO: Fix touchpad, keyboard freeze on resume/thaw for laptops with i8042 contro

    is it going to work with amd turion x2 motherboard? i am using a hp laptop with ubuntu 9.10. please help me.every time i do so i have to restart my laptop.

Page 1 of 5 123 ... LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •