• Alan Stern's avatar
    USB: simplify hub_restart() logic · 6ee0b270
    Alan Stern authored
    This patch (as1081) straightens out the logic of the hub_restart()
    routine.  Each port of the hub is scanned and the driver makes sure
    that ports which are supposed to be disabled really _are_ disabled.
    Any ports with a significant change in status are flagged in
    hub->change_bits, so that khubd can focus on them without the need to
    scan all the ports a second time -- which means the hub->activating
    flag is no longer needed.
    
    Also, it is now recognized explicitly that the only reason for
    resuming a port which was not suspended is to carry out a reset-resume
    operation, which happens only in a non-CONFIG_USB_SUSPEND setting.
    Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    6ee0b270
driver.c 46.7 KB