Commit 88d8aa46 authored by Alan Stern's avatar Alan Stern Committed by Greg Kroah-Hartman

USB: EHCI: remove dead code in the periodic scheduler

This patch (as1409) removes some dead code from the ehci-hcd
scheduler.  Thanks to the previous patch in this series, stream->depth
is no longer used.  And stream->start and stream->rescheduled
apparently have not been used for quite a while, except in some
statistics-reporting code that never gets invoked.
Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
CC: David Brownell <david-b@pacbell.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 1fb2e055
...@@ -1074,15 +1074,6 @@ iso_stream_put(struct ehci_hcd *ehci, struct ehci_iso_stream *stream) ...@@ -1074,15 +1074,6 @@ iso_stream_put(struct ehci_hcd *ehci, struct ehci_iso_stream *stream)
if (stream->ep) if (stream->ep)
stream->ep->hcpriv = NULL; stream->ep->hcpriv = NULL;
if (stream->rescheduled) {
ehci_info (ehci, "ep%d%s-iso rescheduled "
"%lu times in %lu seconds\n",
stream->bEndpointAddress, is_in ? "in" : "out",
stream->rescheduled,
((jiffies - stream->start)/HZ)
);
}
kfree(stream); kfree(stream);
} }
} }
...@@ -1617,7 +1608,6 @@ itd_link_urb ( ...@@ -1617,7 +1608,6 @@ itd_link_urb (
(stream->bEndpointAddress & USB_DIR_IN) ? "in" : "out", (stream->bEndpointAddress & USB_DIR_IN) ? "in" : "out",
urb->interval, urb->interval,
next_uframe >> 3, next_uframe & 0x7); next_uframe >> 3, next_uframe & 0x7);
stream->start = jiffies;
} }
ehci_to_hcd(ehci)->self.bandwidth_isoc_reqs++; ehci_to_hcd(ehci)->self.bandwidth_isoc_reqs++;
...@@ -1643,7 +1633,6 @@ itd_link_urb ( ...@@ -1643,7 +1633,6 @@ itd_link_urb (
itd_patch(ehci, itd, iso_sched, packet, uframe); itd_patch(ehci, itd, iso_sched, packet, uframe);
next_uframe += stream->interval; next_uframe += stream->interval;
stream->depth += stream->interval;
next_uframe &= mod - 1; next_uframe &= mod - 1;
packet++; packet++;
...@@ -1699,7 +1688,6 @@ itd_complete ( ...@@ -1699,7 +1688,6 @@ itd_complete (
t = hc32_to_cpup(ehci, &itd->hw_transaction [uframe]); t = hc32_to_cpup(ehci, &itd->hw_transaction [uframe]);
itd->hw_transaction [uframe] = 0; itd->hw_transaction [uframe] = 0;
stream->depth -= stream->interval;
/* report transfer status */ /* report transfer status */
if (unlikely (t & ISO_ERRS)) { if (unlikely (t & ISO_ERRS)) {
...@@ -2029,7 +2017,6 @@ sitd_link_urb ( ...@@ -2029,7 +2017,6 @@ sitd_link_urb (
(stream->bEndpointAddress & USB_DIR_IN) ? "in" : "out", (stream->bEndpointAddress & USB_DIR_IN) ? "in" : "out",
(next_uframe >> 3) & (ehci->periodic_size - 1), (next_uframe >> 3) & (ehci->periodic_size - 1),
stream->interval, hc32_to_cpu(ehci, stream->splits)); stream->interval, hc32_to_cpu(ehci, stream->splits));
stream->start = jiffies;
} }
ehci_to_hcd(ehci)->self.bandwidth_isoc_reqs++; ehci_to_hcd(ehci)->self.bandwidth_isoc_reqs++;
...@@ -2054,7 +2041,6 @@ sitd_link_urb ( ...@@ -2054,7 +2041,6 @@ sitd_link_urb (
sitd); sitd);
next_uframe += stream->interval << 3; next_uframe += stream->interval << 3;
stream->depth += stream->interval << 3;
} }
stream->next_uframe = next_uframe & (mod - 1); stream->next_uframe = next_uframe & (mod - 1);
...@@ -2114,7 +2100,6 @@ sitd_complete ( ...@@ -2114,7 +2100,6 @@ sitd_complete (
desc->actual_length = desc->length - SITD_LENGTH(t); desc->actual_length = desc->length - SITD_LENGTH(t);
urb->actual_length += desc->actual_length; urb->actual_length += desc->actual_length;
} }
stream->depth -= stream->interval << 3;
/* handle completion now? */ /* handle completion now? */
if ((urb_index + 1) != urb->number_of_packets) if ((urb_index + 1) != urb->number_of_packets)
......
...@@ -404,15 +404,12 @@ struct ehci_iso_stream { ...@@ -404,15 +404,12 @@ struct ehci_iso_stream {
u32 refcount; u32 refcount;
u8 bEndpointAddress; u8 bEndpointAddress;
u8 highspeed; u8 highspeed;
u16 depth; /* depth in uframes */
struct list_head td_list; /* queued itds/sitds */ struct list_head td_list; /* queued itds/sitds */
struct list_head free_list; /* list of unused itds/sitds */ struct list_head free_list; /* list of unused itds/sitds */
struct usb_device *udev; struct usb_device *udev;
struct usb_host_endpoint *ep; struct usb_host_endpoint *ep;
/* output of (re)scheduling */ /* output of (re)scheduling */
unsigned long start; /* jiffies */
unsigned long rescheduled;
int next_uframe; int next_uframe;
__hc32 splits; __hc32 splits;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment