forked from Minki/linux
xhci: xhci_ring_device: Ring stream ring bells for endpoints with streams
Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
14e61a1bd9
commit
b7f9696bd1
@ -319,12 +319,19 @@ static int xhci_stop_device(struct xhci_hcd *xhci, int slot_id, int suspend)
|
||||
*/
|
||||
void xhci_ring_device(struct xhci_hcd *xhci, int slot_id)
|
||||
{
|
||||
int i;
|
||||
int i, s;
|
||||
struct xhci_virt_ep *ep;
|
||||
|
||||
for (i = 0; i < LAST_EP_INDEX + 1; i++)
|
||||
if (xhci->devs[slot_id]->eps[i].ring &&
|
||||
xhci->devs[slot_id]->eps[i].ring->dequeue)
|
||||
for (i = 0; i < LAST_EP_INDEX + 1; i++) {
|
||||
ep = &xhci->devs[slot_id]->eps[i];
|
||||
|
||||
if (ep->ep_state & EP_HAS_STREAMS) {
|
||||
for (s = 1; s < ep->stream_info->num_streams; s++)
|
||||
xhci_ring_ep_doorbell(xhci, slot_id, i, s);
|
||||
} else if (ep->ring && ep->ring->dequeue) {
|
||||
xhci_ring_ep_doorbell(xhci, slot_id, i, 0);
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user