Commit 57b40886 authored by Alan Stern's avatar Alan Stern Committed by Greg Kroah-Hartman

[PATCH] USB: Minor patch for uhci-hcd.c

parent efead44a
...@@ -1283,7 +1283,8 @@ static int isochronous_find_limits(struct uhci_hcd *uhci, struct urb *urb, unsig ...@@ -1283,7 +1283,8 @@ static int isochronous_find_limits(struct uhci_hcd *uhci, struct urb *urb, unsig
} }
if (last_urb) { if (last_urb) {
*end = (last_urb->start_frame + last_urb->number_of_packets) & 1023; *end = (last_urb->start_frame + last_urb->number_of_packets *
last_urb->interval) & (UHCI_NUMFRAMES-1);
ret = 0; ret = 0;
} else } else
ret = -1; /* no previous urb found */ ret = -1; /* no previous urb found */
...@@ -1933,9 +1934,10 @@ static void suspend_hc(struct uhci_hcd *uhci) ...@@ -1933,9 +1934,10 @@ static void suspend_hc(struct uhci_hcd *uhci)
dbg("%x: suspend_hc", io_addr); dbg("%x: suspend_hc", io_addr);
outw(USBCMD_EGSM, io_addr + USBCMD);
uhci->is_suspended = 1; uhci->is_suspended = 1;
smp_wmb();
outw(USBCMD_EGSM, io_addr + USBCMD);
} }
static void wakeup_hc(struct uhci_hcd *uhci) static void wakeup_hc(struct uhci_hcd *uhci)
...@@ -1945,6 +1947,9 @@ static void wakeup_hc(struct uhci_hcd *uhci) ...@@ -1945,6 +1947,9 @@ static void wakeup_hc(struct uhci_hcd *uhci)
dbg("%x: wakeup_hc", io_addr); dbg("%x: wakeup_hc", io_addr);
/* Global resume for 20ms */
outw(USBCMD_FGR | USBCMD_EGSM, io_addr + USBCMD);
wait_ms(20);
outw(0, io_addr + USBCMD); outw(0, io_addr + USBCMD);
/* wait for EOP to be sent */ /* wait for EOP to be sent */
...@@ -1965,7 +1970,7 @@ static int ports_active(struct uhci_hcd *uhci) ...@@ -1965,7 +1970,7 @@ static int ports_active(struct uhci_hcd *uhci)
int i; int i;
for (i = 0; i < uhci->rh_numports; i++) for (i = 0; i < uhci->rh_numports; i++)
connection |= (inw(io_addr + USBPORTSC1 + i * 2) & 0x1); connection |= (inw(io_addr + USBPORTSC1 + i * 2) & USBPORTSC_CCS);
return connection; return connection;
} }
......
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