Skip to content
  • Chris Chiu's avatar
    USB: Add reset-resume quirk for WD19's Realtek Hub · 88cd0fca
    Chris Chiu authored
    commit ca91fd8c
    
     upstream.
    
    Realtek Hub (0bda:5487) in Dell Dock WD19 sometimes fails to work
    after the system resumes from suspend with remote wakeup enabled
    device connected:
    [ 1947.640907] hub 5-2.3:1.0: hub_ext_port_status failed (err = -71)
    [ 1947.641208] usb 5-2.3-port5: cannot disable (err = -71)
    [ 1947.641401] hub 5-2.3:1.0: hub_ext_port_status failed (err = -71)
    [ 1947.641450] usb 5-2.3-port4: cannot reset (err = -71)
    
    Information of this hub:
    T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 10 Spd=480  MxCh= 5
    D:  Ver= 2.10 Cls=09(hub  ) Sub=00 Prot=02 MxPS=64 #Cfgs=  1
    P:  Vendor=0bda ProdID=5487 Rev= 1.47
    S:  Manufacturer=Dell Inc.
    S:  Product=Dell dock
    C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
    I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=01 Driver=hub
    E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=256ms
    I:* If#= 0 Alt= 1 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=02 Driver=hub
    E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=256ms
    
    The failure results from the ETIMEDOUT by chance when turning on
    the suspend feature for the specified port of the hub. The port
    seems to be in an unknown state so the hub_activate during resume
    fails the hub_port_status, then the hub will fail to work.
    
    The quirky hub needs the reset-resume quirk to function correctly.
    
    Acked-by: default avatarAlan Stern <stern@rowland.harvard.edu>
    Signed-off-by: default avatarChris Chiu <chris.chiu@canonical.com>
    Cc: stable <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/20210420174651.6202-1-chris.chiu@canonical.com
    
    
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    88cd0fca