diff options
Diffstat (limited to 'drivers/usb/chipidea/udc.c')
| -rw-r--r-- | drivers/usb/chipidea/udc.c | 12 | 
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c index c9e80ad48fdc..cf132f057137 100644 --- a/drivers/usb/chipidea/udc.c +++ b/drivers/usb/chipidea/udc.c @@ -365,7 +365,7 @@ static int add_td_to_list(struct ci_hw_ep *hwep, struct ci_hw_req *hwreq,  		if (hwreq->req.length == 0  				|| hwreq->req.length % hwep->ep.maxpacket)  			mul++; -		node->ptr->token |= mul << __ffs(TD_MULTO); +		node->ptr->token |= cpu_to_le32(mul << __ffs(TD_MULTO));  	}  	temp = (u32) (hwreq->req.dma + hwreq->req.actual); @@ -504,7 +504,7 @@ static int _hardware_enqueue(struct ci_hw_ep *hwep, struct ci_hw_req *hwreq)  		if (hwreq->req.length == 0  				|| hwreq->req.length % hwep->ep.maxpacket)  			mul++; -		hwep->qh.ptr->cap |= mul << __ffs(QH_MULT); +		hwep->qh.ptr->cap |= cpu_to_le32(mul << __ffs(QH_MULT));  	}  	ret = hw_ep_prime(ci, hwep->num, hwep->dir, @@ -529,7 +529,7 @@ static void free_pending_td(struct ci_hw_ep *hwep)  static int reprime_dtd(struct ci_hdrc *ci, struct ci_hw_ep *hwep,  					   struct td_node *node)  { -	hwep->qh.ptr->td.next = node->dma; +	hwep->qh.ptr->td.next = cpu_to_le32(node->dma);  	hwep->qh.ptr->td.token &=  		cpu_to_le32(~(TD_STATUS_HALTED | TD_STATUS_ACTIVE)); @@ -821,7 +821,7 @@ static int _ep_queue(struct usb_ep *ep, struct usb_request *req,  	}  	if (usb_endpoint_xfer_isoc(hwep->ep.desc) && -	    hwreq->req.length > (1 + hwep->ep.mult) * hwep->ep.maxpacket) { +	    hwreq->req.length > hwep->ep.mult * hwep->ep.maxpacket) {  		dev_err(hwep->ci->dev, "request length too big for isochronous\n");  		return -EMSGSIZE;  	} @@ -1253,8 +1253,8 @@ static int ep_enable(struct usb_ep *ep,  	hwep->num  = usb_endpoint_num(desc);  	hwep->type = usb_endpoint_type(desc); -	hwep->ep.maxpacket = usb_endpoint_maxp(desc) & 0x07ff; -	hwep->ep.mult = QH_ISO_MULT(usb_endpoint_maxp(desc)); +	hwep->ep.maxpacket = usb_endpoint_maxp(desc); +	hwep->ep.mult = usb_endpoint_maxp_mult(desc);  	if (hwep->type == USB_ENDPOINT_XFER_CONTROL)  		cap |= QH_IOS;  |