From 2cfe2c65e7387f885851d08655c5902f17f8c17c Mon Sep 17 00:00:00 2001
From: =?utf8?q?=E9=BB=84=E6=B6=9B?= <huangtao@rock-chips.com>
Date: Fri, 15 Oct 2010 14:15:03 +0800
Subject: [PATCH] adb: fix adb push

---
 drivers/usb/dwc_otg/dwc_otg_cil.c | 3 +++
 drivers/usb/dwc_otg/dwc_otg_pcd.c | 4 ++++
 drivers/usb/gadget/f_adb.c        | 2 +-
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/dwc_otg/dwc_otg_cil.c b/drivers/usb/dwc_otg/dwc_otg_cil.c
index 273357b71091..b90b792c788a 100755
--- a/drivers/usb/dwc_otg/dwc_otg_cil.c
+++ b/drivers/usb/dwc_otg/dwc_otg_cil.c
@@ -2298,6 +2298,9 @@ void dwc_otg_ep_start_transfer(dwc_otg_core_if_t *_core_if, dwc_ep_t *_ep)
 					(_ep->xfer_len + (_ep->maxpacket - 1)) /
 					_ep->maxpacket;
 			deptsiz.b.xfersize = deptsiz.b.pktcnt * _ep->maxpacket;
+			// yk@20101014
+			// actual length will be caculate by xfer_len - xfersize
+			_ep->xfer_len = deptsiz.b.xfersize;
 		}
 		dwc_write_reg32(&out_regs->doeptsiz, deptsiz.d32);
 
diff --git a/drivers/usb/dwc_otg/dwc_otg_pcd.c b/drivers/usb/dwc_otg/dwc_otg_pcd.c
index 4394e6ca420f..4215a0ba6708 100755
--- a/drivers/usb/dwc_otg/dwc_otg_pcd.c
+++ b/drivers/usb/dwc_otg/dwc_otg_pcd.c
@@ -338,6 +338,10 @@ static int dwc_otg_pcd_ep_enable(struct usb_ep *_ep,
          */
         if(ep->dwc_ep.num == 0)
 	        ep->dwc_ep.tx_fifo_num = 0;
+        else if(ep->dwc_ep.num == 1)
+                ep->dwc_ep.tx_fifo_num = 1;
+        else if(ep->dwc_ep.num == 3)
+                ep->dwc_ep.tx_fifo_num = 3;
         else
     	    ep->dwc_ep.tx_fifo_num = (ep->dwc_ep.num>>1)+1 ; /* 1,3,5 */
 	}		 
diff --git a/drivers/usb/gadget/f_adb.c b/drivers/usb/gadget/f_adb.c
index ec23b72dd8bd..1cd22a57550a 100644
--- a/drivers/usb/gadget/f_adb.c
+++ b/drivers/usb/gadget/f_adb.c
@@ -77,7 +77,7 @@ static struct usb_endpoint_descriptor adb_highspeed_in_desc = {
 	.bDescriptorType        = USB_DT_ENDPOINT,
 	.bEndpointAddress       = USB_DIR_IN,
 	.bmAttributes           = USB_ENDPOINT_XFER_BULK,
-	.wMaxPacketSize         = __constant_cpu_to_le16(512),
+	.wMaxPacketSize         = __constant_cpu_to_le16(64),
 };
 
 static struct usb_endpoint_descriptor adb_highspeed_out_desc = {
-- 
2.34.1