USB: EHCI: use consistent NO_FRAME value

ehci-hcd is inconsistent in the sentinel values it uses to indicate
that no frame number has been assigned for a periodic transfer.  Some
places it uses NO_FRAME (defined as 65535), other places it uses -1,
and elsewhere it uses 9999.

This patch defines a value for NO_FRAME which can fit in a 16-bit
signed integer, and changes the code to use it everywhere.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Alan Stern
2013-10-11 11:28:52 -04:00
committed by Greg Kroah-Hartman
parent 27c4a31d67
commit 91a99b5e78
2 changed files with 7 additions and 6 deletions

View File

@@ -54,6 +54,8 @@ struct ehci_stats {
unsigned long unlink;
};
#define NO_FRAME 29999 /* frame not assigned yet */
/* ehci_hcd->lock guards shared data against other CPUs:
* ehci_hcd: async, unlink, periodic (and shadow), ...
* usb_host_endpoint: hcpriv
@@ -405,7 +407,6 @@ struct ehci_qh {
u16 tt_usecs; /* tt downstream bandwidth */
unsigned short period; /* polling interval */
unsigned short start; /* where polling starts */
#define NO_FRAME ((unsigned short)~0) /* pick new start */
struct usb_device *dev; /* access to TT */
unsigned is_out:1; /* bulk or intr OUT */
@@ -454,7 +455,7 @@ struct ehci_iso_stream {
struct usb_host_endpoint *ep;
/* output of (re)scheduling */
int next_uframe;
unsigned next_uframe;
__hc32 splits;
/* the rest is derived from the endpoint descriptor,