• Sarah Sharp's avatar
    USB: xhci: Endpoint representation refactoring. · 63a0d9ab
    Sarah Sharp authored
    The xhci_ring structure contained information that is really related to an
    endpoint, not a ring.  This will cause problems later when endpoint
    streams are supported and there are multiple rings per endpoint.
    
    Move the endpoint state and cancellation information into a new virtual
    endpoint structure, xhci_virt_ep.  The list of TRBs to be cancelled should
    be per endpoint, not per ring, for easy access.  There can be only one TRB
    that the endpoint stopped on after a stop endpoint command (even with
    streams enabled); move the stopped TRB information into the new virtual
    endpoint structure.  Also move the 31 endpoint rings and temporary ring
    storage from the virtual device structure (xhci_virt_device) into the
    virtual endpoint structure (xhci_virt_ep).
    Signed-off-by: default avatarSarah Sharp <sarah.a.sharp@linux.intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    63a0d9ab
xhci-hcd.c 50.3 KB