Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 259213
b: refs/heads/master
c: 0432eed
h: refs/heads/master
i:
  259211: e544fab
v: v3
  • Loading branch information
Kuninori Morimoto authored and Greg Kroah-Hartman committed Jun 7, 2011
1 parent e6e44d0 commit 90f98dd
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 18 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d77e3f4e1743834c7b4acb54004ffd7f57c82582
refs/heads/master: 0432eed008024e0e90f16207ab406ac6ec877cac
6 changes: 5 additions & 1 deletion trunk/drivers/usb/renesas_usbhs/fifo.c
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@ void usbhs_pkt_push(struct usbhs_pipe *pipe, struct usbhs_pkt *pkt,

usbhs_unlock(priv, flags);
/******************** spin unlock ******************/

usbhs_pkt_start(pipe);
}

static void __usbhsf_pkt_del(struct usbhs_pkt *pkt)
Expand Down Expand Up @@ -148,8 +150,10 @@ int __usbhs_pkt_handler(struct usbhs_pipe *pipe, int type)
usbhs_unlock(priv, flags);
/******************** spin unlock ******************/

if (is_done)
if (is_done) {
info->done(pkt);
usbhs_pkt_start(pipe);
}

return ret;
}
Expand Down
22 changes: 6 additions & 16 deletions trunk/drivers/usb/renesas_usbhs/mod_gadget.c
Original file line number Diff line number Diff line change
Expand Up @@ -125,23 +125,16 @@ static void usbhsg_queue_push(struct usbhsg_uep *uep,
struct usbhs_pkt *pkt = usbhsg_ureq_to_pkt(ureq);
struct usb_request *req = &ureq->req;

usbhs_pkt_push(pipe, pkt, uep->handler,
req->buf, req->length, req->zero);
req->actual = 0;
req->status = -EINPROGRESS;
usbhs_pkt_push(pipe, pkt, uep->handler,
req->buf, req->length, req->zero);

dev_dbg(dev, "pipe %d : queue push (%d)\n",
usbhs_pipe_number(pipe),
req->length);
}

static void usbhsg_queue_start(struct usbhsg_uep *uep)
{
struct usbhs_pipe *pipe = usbhsg_uep_to_pipe(uep);

usbhs_pkt_start(pipe);
}

static void usbhsg_queue_pop(struct usbhsg_uep *uep,
struct usbhsg_request *ureq,
int status)
Expand All @@ -154,10 +147,6 @@ static void usbhsg_queue_pop(struct usbhsg_uep *uep,

ureq->req.status = status;
ureq->req.complete(&uep->ep, &ureq->req);

/* more request ? */
if (0 == status)
usbhsg_queue_start(uep);
}

static void usbhsg_queue_done(struct usbhs_pkt *pkt)
Expand Down Expand Up @@ -222,6 +211,7 @@ static int usbhsg_recip_run_handle(struct usbhs_priv *priv,
struct usbhsg_gpriv *gpriv = usbhsg_priv_to_gpriv(priv);
struct device *dev = usbhsg_gpriv_to_dev(gpriv);
struct usbhsg_uep *uep;
struct usbhs_pipe *pipe;
int recip = ctrl->bRequestType & USB_RECIP_MASK;
int nth = le16_to_cpu(ctrl->wIndex) & USB_ENDPOINT_NUMBER_MASK;
int ret;
Expand All @@ -230,7 +220,8 @@ static int usbhsg_recip_run_handle(struct usbhs_priv *priv,
char *msg;

uep = usbhsg_gpriv_to_nth_uep(gpriv, nth);
if (!usbhsg_uep_to_pipe(uep)) {
pipe = usbhsg_uep_to_pipe(uep);
if (!pipe) {
dev_err(dev, "wrong recip request\n");
ret = -EINVAL;
goto usbhsg_recip_run_handle_end;
Expand Down Expand Up @@ -268,7 +259,7 @@ static int usbhsg_recip_run_handle(struct usbhs_priv *priv,
}

usbhsg_recip_run_handle_end:
usbhsg_queue_start(uep);
usbhs_pkt_start(pipe);

return ret;
}
Expand Down Expand Up @@ -470,7 +461,6 @@ static int usbhsg_ep_queue(struct usb_ep *ep, struct usb_request *req,
return -ESHUTDOWN;

usbhsg_queue_push(uep, ureq);
usbhsg_queue_start(uep);

return 0;
}
Expand Down

0 comments on commit 90f98dd

Please sign in to comment.