mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-22 12:14:01 +08:00
usb: gadget: Update pxa25x_udc to use usb_endpoint_descriptor inside the struct usb_ep
Remove redundant pointer to struct usb_endpoint_descriptor. Signed-off-by: Ido Shayevitz <idos@codeaurora.org> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
parent
f8bdae0614
commit
c18800d8f9
@ -218,7 +218,7 @@ static int pxa25x_ep_enable (struct usb_ep *_ep,
|
||||
struct pxa25x_udc *dev;
|
||||
|
||||
ep = container_of (_ep, struct pxa25x_ep, ep);
|
||||
if (!_ep || !desc || ep->desc || _ep->name == ep0name
|
||||
if (!_ep || !desc || ep->ep.desc || _ep->name == ep0name
|
||||
|| desc->bDescriptorType != USB_DT_ENDPOINT
|
||||
|| ep->bEndpointAddress != desc->bEndpointAddress
|
||||
|| ep->fifo_size < usb_endpoint_maxp (desc)) {
|
||||
@ -249,7 +249,7 @@ static int pxa25x_ep_enable (struct usb_ep *_ep,
|
||||
return -ESHUTDOWN;
|
||||
}
|
||||
|
||||
ep->desc = desc;
|
||||
ep->ep.desc = desc;
|
||||
ep->stopped = 0;
|
||||
ep->pio_irqs = 0;
|
||||
ep->ep.maxpacket = usb_endpoint_maxp (desc);
|
||||
@ -269,7 +269,7 @@ static int pxa25x_ep_disable (struct usb_ep *_ep)
|
||||
unsigned long flags;
|
||||
|
||||
ep = container_of (_ep, struct pxa25x_ep, ep);
|
||||
if (!_ep || !ep->desc) {
|
||||
if (!_ep || !ep->ep.desc) {
|
||||
DMSG("%s, %s not enabled\n", __func__,
|
||||
_ep ? ep->ep.name : NULL);
|
||||
return -EINVAL;
|
||||
@ -281,7 +281,6 @@ static int pxa25x_ep_disable (struct usb_ep *_ep)
|
||||
/* flush fifo (mostly for IN buffers) */
|
||||
pxa25x_ep_fifo_flush (_ep);
|
||||
|
||||
ep->desc = NULL;
|
||||
ep->ep.desc = NULL;
|
||||
ep->stopped = 1;
|
||||
|
||||
@ -390,7 +389,7 @@ write_fifo (struct pxa25x_ep *ep, struct pxa25x_request *req)
|
||||
{
|
||||
unsigned max;
|
||||
|
||||
max = usb_endpoint_maxp(ep->desc);
|
||||
max = usb_endpoint_maxp(ep->ep.desc);
|
||||
do {
|
||||
unsigned count;
|
||||
int is_last, is_short;
|
||||
@ -644,7 +643,7 @@ pxa25x_ep_queue(struct usb_ep *_ep, struct usb_request *_req, gfp_t gfp_flags)
|
||||
}
|
||||
|
||||
ep = container_of(_ep, struct pxa25x_ep, ep);
|
||||
if (unlikely (!_ep || (!ep->desc && ep->ep.name != ep0name))) {
|
||||
if (unlikely(!_ep || (!ep->ep.desc && ep->ep.name != ep0name))) {
|
||||
DMSG("%s, bad ep\n", __func__);
|
||||
return -EINVAL;
|
||||
}
|
||||
@ -660,7 +659,7 @@ pxa25x_ep_queue(struct usb_ep *_ep, struct usb_request *_req, gfp_t gfp_flags)
|
||||
* we can report per-packet status. that also helps with dma.
|
||||
*/
|
||||
if (unlikely (ep->bmAttributes == USB_ENDPOINT_XFER_ISOC
|
||||
&& req->req.length > usb_endpoint_maxp (ep->desc)))
|
||||
&& req->req.length > usb_endpoint_maxp(ep->ep.desc)))
|
||||
return -EMSGSIZE;
|
||||
|
||||
DBG(DBG_NOISY, "%s queue req %p, len %d buf %p\n",
|
||||
@ -673,7 +672,7 @@ pxa25x_ep_queue(struct usb_ep *_ep, struct usb_request *_req, gfp_t gfp_flags)
|
||||
|
||||
/* kickstart this i/o queue? */
|
||||
if (list_empty(&ep->queue) && !ep->stopped) {
|
||||
if (ep->desc == NULL/* ep0 */) {
|
||||
if (ep->ep.desc == NULL/* ep0 */) {
|
||||
unsigned length = _req->length;
|
||||
|
||||
switch (dev->ep0state) {
|
||||
@ -722,7 +721,7 @@ pxa25x_ep_queue(struct usb_ep *_ep, struct usb_request *_req, gfp_t gfp_flags)
|
||||
req = NULL;
|
||||
}
|
||||
|
||||
if (likely (req && ep->desc))
|
||||
if (likely(req && ep->ep.desc))
|
||||
pio_irq_enable(ep->bEndpointAddress);
|
||||
}
|
||||
|
||||
@ -749,7 +748,7 @@ static void nuke(struct pxa25x_ep *ep, int status)
|
||||
queue);
|
||||
done(ep, req, status);
|
||||
}
|
||||
if (ep->desc)
|
||||
if (ep->ep.desc)
|
||||
pio_irq_disable (ep->bEndpointAddress);
|
||||
}
|
||||
|
||||
@ -792,7 +791,7 @@ static int pxa25x_ep_set_halt(struct usb_ep *_ep, int value)
|
||||
|
||||
ep = container_of(_ep, struct pxa25x_ep, ep);
|
||||
if (unlikely (!_ep
|
||||
|| (!ep->desc && ep->ep.name != ep0name))
|
||||
|| (!ep->ep.desc && ep->ep.name != ep0name))
|
||||
|| ep->bmAttributes == USB_ENDPOINT_XFER_ISOC) {
|
||||
DMSG("%s, bad ep\n", __func__);
|
||||
return -EINVAL;
|
||||
@ -820,7 +819,7 @@ static int pxa25x_ep_set_halt(struct usb_ep *_ep, int value)
|
||||
*ep->reg_udccs = UDCCS_BI_FST|UDCCS_BI_FTF;
|
||||
|
||||
/* ep0 needs special care */
|
||||
if (!ep->desc) {
|
||||
if (!ep->ep.desc) {
|
||||
start_watchdog(ep->dev);
|
||||
ep->dev->req_pending = 0;
|
||||
ep->dev->ep0state = EP0_STALL;
|
||||
@ -1087,7 +1086,7 @@ udc_seq_show(struct seq_file *m, void *_d)
|
||||
if (i != 0) {
|
||||
const struct usb_endpoint_descriptor *desc;
|
||||
|
||||
desc = ep->desc;
|
||||
desc = ep->ep.desc;
|
||||
if (!desc)
|
||||
continue;
|
||||
tmp = *dev->ep [i].reg_udccs;
|
||||
@ -1191,7 +1190,6 @@ static void udc_reinit(struct pxa25x_udc *dev)
|
||||
if (i != 0)
|
||||
list_add_tail (&ep->ep.ep_list, &dev->gadget.ep_list);
|
||||
|
||||
ep->desc = NULL;
|
||||
ep->ep.desc = NULL;
|
||||
ep->stopped = 0;
|
||||
INIT_LIST_HEAD (&ep->queue);
|
||||
|
@ -41,7 +41,6 @@ struct pxa25x_ep {
|
||||
struct usb_ep ep;
|
||||
struct pxa25x_udc *dev;
|
||||
|
||||
const struct usb_endpoint_descriptor *desc;
|
||||
struct list_head queue;
|
||||
unsigned long pio_irqs;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user