#8894 HIGH Not Tri: Synaptics touchpad takes two seconds to wake up after resume

Zarro Boogs per Child bugtracker at laptop.org
Thu Oct 30 04:59:10 EDT 2008


#8894: Synaptics touchpad takes two seconds to wake up after resume
--------------------------+-------------------------------------------------
     Reporter:  wad       |        Owner:  dsaxena       
         Type:  defect    |       Status:  assigned      
     Priority:  high      |    Milestone:  Not Triaged   
    Component:  kernel    |      Version:  not specified 
   Resolution:            |     Keywords:  CL1-A touchpad
  Next_action:  diagnose  |   Spec_stage:  unknown       
    Blockedby:            |     Blocking:                
Spec_reviewer:            |     Verified:  0             
Spec_reviewed:  0         |  
--------------------------+-------------------------------------------------

Comment(by dsaxena):

 What I am seeing seems very odd. As Dilinger pointed out, serio_resume()
 calls serio_reconnect_driver() which in turn call
 psmouse_reconnect_driver().
 This should call synaptics->reconnect(), but adding some debug at this
 point
 shows that the psmouse->reconnect function pointer is NULL. So instead of
 calling the reconnect() function, we do a new psmouse_probe() and check
 for
 the extension type. If detected extension type != psmouse->type, we bail
 causing the serio resume path to queue an event to scan the bus later.
 In our case, the detected type is PSMOUSE_SYNAPTICS and psmouse->type
 is PSMOUSE_PS2, trigerring the delayed scan. Somehow, somewhere, some of
 the device data structure is getting reset in the S/R path.
 psmouse->vendor
 and psmouse->type are correct  ("Synaptics", "TouchPad") so it is not
 that we're getting the wrong pointer.

-- 
Ticket URL: <http://dev.laptop.org/ticket/8894#comment:10>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system


More information about the Bugs mailing list