Bug 465677 - bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
Status: CLOSED INSUFFICIENT_DATA
Product: Fedora
Classification: Fedora
Component: kernel (Show other bugs)
18
All Linux
medium Severity high
: ---
: ---
Assigned To: Kernel Maintainer List
Fedora Extras Quality Assurance
: Reopened
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2008-10-05 08:55 EDT by Naresh
Modified: 2015-01-02 16:59 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-11-27 11:15:16 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
message and Xorg.0.log from suspend/resume cycle + rmmod and modprobe (27.96 KB, text/plain)
2009-03-13 18:40 EDT, Jan Schmidt
no flags Details

  None (edit)
Description Naresh 2008-10-05 08:55:55 EDT
Description of problem:

Touchpad is useless after suspend/resume.

Version-Release number of selected component (if applicable):

[nareshv ~]$ /sbin/modinfo bcm5974
filename:       /lib/modules/2.6.27-0.391.rc8.git7.fc10.x86_64/kernel/drivers/input/mouse/bcm5974.ko
license:        GPL
description:    Apple USB BCM5974 multitouch driver
author:         Henrik Rydberg
srcversion:     B97A6EA0304A5970714E942
alias:          usb:v05ACp0232d*dc*dsc*dp*ic03isc*ip02*
alias:          usb:v05ACp0231d*dc*dsc*dp*ic03isc*ip02*
alias:          usb:v05ACp0230d*dc*dsc*dp*ic03isc*ip02*
alias:          usb:v05ACp0225d*dc*dsc*dp*ic03isc*ip02*
alias:          usb:v05ACp0224d*dc*dsc*dp*ic03isc*ip02*
alias:          usb:v05ACp0223d*dc*dsc*dp*ic03isc*ip02*
depends:        
vermagic:       2.6.27-0.391.rc8.git7.fc10.x86_64 SMP mod_unload 
parm:           debug:Activate debugging output (int)

How reproducible:

Always

Steps to Reproduce:
1. Boot into Fedora 10 Beta, any desktop GNOME/KDE
2. Use suspend to Ram
3. Resume the notebook
  
Actual results:

Touchpad does not work at all.

Expected results:

Touchpad should work.

Additional info:

Since keyboard is working after resume, i tried to unload the module and load it again, then the touchpad seems functional. But not all the tapping features are working because the driver is loaded after synaptics by xorg.

Errors are like these

[nareshv ~]$ dmesg | tail
bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
bcm5974: bad trackpad package, length: 8
Comment 1 Naresh 2008-10-05 12:10:54 EDT
Added a quirk in 'step-7' of my blog http://nareshv.blogspot.com/2008/10/fedora-10-beta-64-bit-on-macbook-pro-41.html
Comment 2 Chuck Ebbert 2008-10-10 03:11:00 EDT
$ cat /etc/pm/sleep.d/22touchpad 
#!/bin/bash

if [ -e '/usr/lib/pm-utils/functions' ];then
. /usr/lib/pm-utils/functions
fi

suspend_bcm5974() { /sbin/rmmod bcm5974; }
resume_bcm5974() { /sbin/modprobe bcm5974; }

case "$1" in
    suspend|hibernate)
        suspend_bcm5974;
        ;;
    thaw|resume)
        resume_bcm5974;
        ;;
    *)
        ;;
esac

exit $?
Comment 3 Naresh 2008-11-15 22:14:01 EST
Even with my quirk above, there is still one issue. X is coming up before the kernel module itself is loaded, thus X is not able to find the touchpad, and is failing back to  version which doesn't support any kinda tapping, etc. I tried playing with /etc/pm* but no luck. Any other way to make sure that the module is loaded before X itself starts up ?

from xorg.log

(WW) bcm5974 can't grab event device, errno=16
(EE) xf86OpenSerial: Cannot open device /dev/input/event8
(WW) Synaptics Touchpad: cannot open input device
(EE) xf86OpenSerial: Cannot open device /dev/input/event8
(WW) Synaptics Touchpad: cannot open input device
Comment 4 Naresh 2008-11-16 10:17:50 EST
I seem to figure out the solution. Instead of putting the script to load/unload the modules in /etc/ put them in /usr/lib64 like this.

[nareshv@nareshv ~]$ ls -l /usr/lib64/pm-utils/sleep.d/
total 80
-rwxr-xr-x 1 root root 2425 2008-11-04 18:03 00auto-quirk
-rwxr-xr-x 1 root root  274 2008-11-04 18:03 00logging
-rwxr-xr-x 1 root root  203 2008-11-04 18:03 00powersave
-rwxr-xr-x 1 root root  809 2008-11-04 18:03 01grub
-rwxr-xr-x 1 root root  341 2008-11-15 18:52 02touchpad
-rwxr-xr-x 1 root root  664 2008-11-04 18:03 49bluetooth
-rwxr-xr-x 1 root root  447 2008-11-04 18:03 50ntpd
-rwxr-xr-x 1 root root  429 2008-11-04 18:03 55battery
-rwxr-xr-x 1 root root 1029 2008-11-04 18:03 55NetworkManager
-rwxr-xr-x 1 root root  409 2008-11-04 18:03 65alsa
-rwxr-xr-x 1 root root  335 2008-11-04 18:03 75modules
-rwxr-xr-x 1 root root  391 2008-11-04 18:03 90chvt
-rwxr-xr-x 1 root root  419 2008-11-04 18:03 90clock
-rwxr-xr-x 1 root root 1098 2008-11-04 18:03 94cpufreq
-rwxr-xr-x 1 root root  297 2008-11-04 18:03 95led
-rwxr-xr-x 1 root root  707 2008-11-05 15:31 95packagekit
-rwxr-xr-x 1 root root 2920 2008-11-04 18:03 98smart-kernel-video
-rwxr-xr-x 1 root root 2068 2008-11-04 18:03 99hd-apm-restore.hook
-rwxr-xr-x 1 root root 5492 2008-11-04 18:03 99video

[nareshv@nareshv ~]$ cat /usr/lib64/pm-utils/sleep.d/02touchpad
#!/bin/bash

if [ -e '/usr/lib64/pm-utils/functions' ];then
. /usr/lib64/pm-utils/functions
fi

suspend_bcm5974() { /sbin/rmmod bcm5974; }
resume_bcm5974() { /sbin/modprobe bcm5974; }

case "$1" in
    suspend|hibernate)
        suspend_bcm5974;
        ;;
    thaw|resume)
        resume_bcm5974;
        ;;
    *)
        ;;
esac

exit $?
Comment 5 Bug Zapper 2008-11-25 22:34:48 EST
This bug appears to have been reported against 'rawhide' during the Fedora 10 development cycle.
Changing version to '10'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Comment 6 Naresh 2008-11-26 02:25:24 EST
Whenever i lock my screen, X is loosing the touchpad and reverting to the older version of the driver without bcm* where i am loosing all the tapping features. This happened with latest F10 release.

[nareshv>>nareshv /home/nareshv $ rpm -qa xorg\*
xorg-x11-drv-diamondtouch-0.2.0-0.1.fc9.x86_64
xorg-x11-drv-dummy-0.3.0-1.fc9.x86_64
xorg-x11-drv-magellan-1.2.0-1.fc9.x86_64
xorg-x11-font-utils-7.2-6.fc10.x86_64
xorg-x11-drv-apm-1.2.0-1.fc9.x86_64
xorg-x11-drv-nouveau-0.0.11-1.20080902git6dd8ad4.fc10.x86_64
xorg-x11-drv-i740-1.2.0-1.fc9.x86_64
xorg-x11-drv-vmmouse-12.6.1-1.fc10.x86_64
xorg-x11-xkb-utils-7.2-7.fc10.x86_64
xorg-x11-xdm-1.1.6-4.fc10.x86_64
xorg-x11-drv-tdfx-1.4.0-1.fc9.x86_64
xorg-x11-drv-hyperpen-1.2.0-1.fc9.x86_64
xorg-x11-drv-v4l-0.2.0-1.fc9.x86_64
xorg-x11-drv-savage-2.2.0-2.fc9.x86_64
xorg-x11-drv-elographics-1.2.3-1.fc10.x86_64
xorg-x11-drv-evdev-2.0.7-3.fc10.x86_64
xorg-x11-drv-void-1.1.1-9.fc9.x86_64
xorg-x11-drv-spaceorb-1.1.0-6.fc9.x86_64
xorg-x11-drv-dynapro-1.1.2-1.fc9.x86_64
xorg-x11-drv-digitaledge-1.1.1-1.fc9.x86_64
xorg-x11-drv-fbdev-0.3.1-7.fc9.x86_64
xorg-x11-drivers-7.3-9.fc10.x86_64
xorg-x11-filesystem-7.3-2.fc10.noarch
xorg-x11-drv-ur98-1.1.0-5.fc9.x86_64
xorg-x11-drv-sisusb-0.9.0-1.fc9.x86_64
xorg-x11-drv-s3virge-1.10.0-1.fc9.x86_64
xorg-x11-drv-dmc-1.1.2-1.fc9.x86_64
xorg-x11-drv-fpit-1.2.0-1.fc9.x86_64
xorg-x11-drv-synaptics-0.15.2-1.fc10.x86_64
xorg-x11-fonts-ISO8859-1-100dpi-7.2-6.fc9.noarch
xorg-x11-server-utils-7.4-3.fc10.x86_64
xorg-x11-drv-voodoo-1.2.0-1.fc9.x86_64
xorg-x11-drv-sis-0.10.0-1.fc9.x86_64
xorg-x11-drv-penmount-1.3.0-1.fc9.x86_64
xorg-x11-drv-rendition-4.2.0-1.fc9.x86_64
xorg-x11-drv-i128-1.3.0-1.fc9.x86_64
xorg-x11-drv-calcomp-1.1.2-1.fc9.x86_64
xorg-x11-resutils-7.1-6.fc10.x86_64
xorg-x11-xauth-1.0.2-5.fc10.x86_64
xorg-x11-drv-acecad-1.2.2-1.fc9.x86_64
xorg-x11-drv-openchrome-0.2.903-1.fc10.x86_64
xorg-x11-drv-summa-1.2.0-2.fc10.x86_64
xorg-x11-drv-palmax-1.2.0-1.fc9.x86_64
xorg-x11-drv-mach64-6.8.0-1.fc10.x86_64
xorg-x11-drv-i810-2.5.0-3.fc10.x86_64
xorg-x11-server-Xorg-1.5.3-5.fc10.x86_64
xorg-x11-drv-ati-6.9.0-54.fc10.x86_64
xorg-x11-utils-7.4-3.fc10.x86_64
xorg-x11-drv-vesa-2.0.0-1.fc10.x86_64
xorg-x11-xinit-1.0.9-4.fc10.x86_64
xorg-x11-drv-mga-1.4.9-1.fc9.x86_64
xorg-x11-drv-siliconmotion-1.6.0-1.fc9.x86_64
xorg-x11-drv-microtouch-1.2.0-1.fc9.x86_64
xorg-x11-drv-wiimote-0.0.1-1.fc9.x86_64
xorg-x11-drv-aiptek-1.1.1-1.fc9.x86_64
xorg-x11-drv-mutouch-1.2.1-1.fc10.x86_64
xorg-x11-drv-keyboard-1.3.0-3.fc9.x86_64
xorg-x11-drv-cirrus-1.2.0-1.fc9.x86_64
xorg-x11-drv-vmware-10.16.0-1.fc9.x86_64
xorg-x11-drv-jamstudio-1.2.0-1.fc9.x86_64
xorg-x11-drv-nv-2.1.12-6.fc10.x86_64
xorg-x11-apps-7.3-5.fc10.x86_64
xorg-x11-drv-citron-2.2.1-1.fc9.x86_64
xorg-x11-drv-glint-1.2.1-1.fc9.x86_64
xorg-x11-drv-tek4957-1.2.0-1.fc9.x86_64
xorg-x11-server-common-1.5.3-5.fc10.x86_64
xorg-x11-drv-mouse-1.3.0-2.fc9.x86_64
xorg-x11-drv-r128-6.8.0-1.fc10.x86_64
xorg-x11-drv-trident-1.3.0-1.fc9.x86_64
xorg-x11-drv-ast-0.85.0-1.fc9.x86_64
Comment 7 Jan Schmidt 2009-03-13 18:29:51 EDT
This is still an issue in rawhide with 2.6.29-0.237.rc7.git4.fc11.i686.PAE
Comment 8 Jan Schmidt 2009-03-13 18:40:13 EDT
Created attachment 335175 [details]
message and Xorg.0.log from suspend/resume cycle + rmmod and modprobe

In the log, it looks like the device still exists and is visible to X after resume, but isn't usable until the module is removed and reinserted.
Comment 9 Bug Zapper 2009-11-18 02:56:04 EST
This message is a reminder that Fedora 10 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 10.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '10'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 10's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 10 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Comment 10 Bug Zapper 2009-12-18 01:30:44 EST
Fedora 10 changed to end-of-life (EOL) status on 2009-12-17. Fedora 10 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.
Comment 11 David Woodhouse 2013-01-03 20:10:44 EST
I'm seeing this in Fedora 18 at random times; not suspend/resume. I've patched it to call bcm5974_wellspring_mode() to attempt to reset the device into the correct mode, after receiving bad packets. Will see if that works next time it happens....
Comment 12 Arun S A G 2013-06-19 08:08:32 EDT
I see the same on fedora 18. 

bcm5974: bad trackpad package, length: 6

filename:       /lib/modules/3.9.5-201.fc18.x86_64/kernel/drivers/input/mouse/bcm5974.ko
license:        GPL
description:    Apple USB BCM5974 multitouch driver
author:         Henrik Rydberg
alias:          usb:v05ACp025Bd*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp025Ad*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0259d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0264d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0263d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0262d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0254d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0253d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0252d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp024Ed*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp024Dd*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp024Cd*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp024Bd*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp024Ad*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0249d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0247d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0246d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0245d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0244d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0243d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0242d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0241d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0240d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp023Fd*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0238d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0237d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0236d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0232d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0231d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0230d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0225d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0224d*dc*dsc*dp*ic03isc*ip02in*
alias:          usb:v05ACp0223d*dc*dsc*dp*ic03isc*ip02in*
depends:        
intree:         Y
vermagic:       3.9.5-201.fc18.x86_64 SMP mod_unload 
parm:           debug:Activate debugging output (int)


I don't need to suspend/resume! Touchpad is totally unusable (registers random clicks, and movements) 

Not sure whether it is a hardware issue though!
Comment 13 Arun S A G 2013-06-19 08:13:08 EDT
(In reply to David Woodhouse from comment #11)
> I'm seeing this in Fedora 18 at random times; not suspend/resume. I've
> patched it to call bcm5974_wellspring_mode() to attempt to reset the device
> into the correct mode, after receiving bad packets. Will see if that works
> next time it happens....


David, 

Does it work for you after patching module?
Comment 14 Justin M. Forbes 2013-10-18 17:07:27 EDT
*********** MASS BUG UPDATE **************

We apologize for the inconvenience.  There is a large number of bugs to go through and several of them have gone stale.  Due to this, we are doing a mass bug update across all of the Fedora 18 kernel bugs.

Fedora 18 has now been rebased to 3.11.4-101.fc18.  Please test this kernel update (or newer) and let us know if you issue has been resolved or if it is still present with the newer kernel.

If you have moved on to Fedora 19, and are still experiencing this issue, please change the version to Fedora 19.

If you experience different issues, please open a new bug report for those.
Comment 15 Justin M. Forbes 2013-11-27 11:15:16 EST
*********** MASS BUG UPDATE **************

We apologize for the inconvenience.  There is a large number of bugs to go through and several of them have gone stale.  

It has been over a month since we asked you to test the 3.11 kernel updates and let us know if your issue has been resolved or is still a problem. When this happened, the bug was set to needinfo.  Because the needinfo is still set, we assume either this is no longer a problem, or you cannot provide additional information to help us resolve the issue.  As a result we are closing with insufficient data. If this is still a problem, we apologize, feel free to reopen the bug and provide more information so that we can work towards a resolution

If you experience different issues, please open a new bug report for those.
Comment 16 Brendan Weir 2015-01-02 16:59:54 EST
I also get this error in Fedora 21

Steps to reproduce:
Boot macbook air into Fedora 21 (Gnome 3 or LXDE)
Close macbook lid
Open macbook lid

Actual Result:
Touchpad fails to work

dmesg contains
bcm5974: bad trackpad package, length: 8

Expected Result:
Touchpad works

Mitigation:
If I switch between virtual terminals, the trackpad starts to work when I return to the X terminal

journalctl contains

gdm-Xorg-:0[11287]: (II) AIGLX: Suspending AIGLX clients for VT switch
gdm-Xorg-:0[11287]: (II) AIGLX: Resuming AIGLX clients after VT switch
gdm-Xorg-:0[11287]: (II) intel(0): switch to mode 1280x800@61.2 on LVDS1 using pipe 0, position (0, 0), rotation normal, reflection none
gdm-Xorg-:0[11287]: (--) synaptics: bcm5974: touchpad found

uname -srio
Linux 3.17.7-300.fc21.x86_64 x86_64 GNU/Linux

Note You need to log in before you can comment on or make changes to this bug.