From: Troy Kisky <troy.kisky@boundarydevices.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH V4 10/17] usb: gadget: mv_udc: optimize bounce
Date: Mon, 23 Sep 2013 12:12:05 -0700 [thread overview]
Message-ID: <52409285.5030202@boundarydevices.com> (raw)
In-Reply-To: <201309230202.34693.marex@denx.de>
On 9/22/2013 5:02 PM, Marek Vasut wrote:
> Dear Troy Kisky,
>
>> On 9/20/2013 3:58 AM, Marek Vasut wrote:
>>> Dear Troy Kisky,
>>>
>>>> Only perform one copy, either in the bounce
>>>> routine for IN transfers, or the debounce
>>>> rtn for OUT transfer.
>>>>
>>>> On out transfers, only copy the number
>>>> of bytes received from the bounce buffer
>>>>
>>>> Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
>>>>
>>>> ---
>>>> v4: no change
>>> Just a question here. Are you sure we never Send AND Reserve the data in
>>> one turn? Because that would need two copyings.
>> ??? s/Reserve/Receive/
>>
>> As far as I'm aware, a single buffer is only ever used to capture or
>> provide data not both.
>> But, if 2 transfers were queued, an OUT and then an IN using the same
Actually, I should have said "an IN (tx to the host controller) and then
an OUT(rx from the host controller)"
>> buffer, if it worked before
>> this patch, it should work after as well.
> How come? Before, it was doing flush before and inval after the transfer, right
> ?
The 1st "IN" transfer (tx to the host), will [copy]/flush on mv_bounce
and [free]/nothing on mv_debounce.
The 2nd "OUT" transfer (rx from the host) will flush on mv_bounce and
invalidate/[copy/free] on mv_debounce.
>
> btw what does this part of the patch do/mean ? Why is it there?
>
> @@ -387,10 +383,9 @@ static void handle_ep_complete(struct mv_ep *ep)
> num, in ? "in" : "out", item->info, item->page0);
>
> len = (item->info >> 16) & 0x7fff;
> -
> - mv_debounce(ep);
> -
> ep->req.length -= len;
> + mv_debounce(ep, in);
> +
>
That implements the "On out transfers, only copy the number of bytes
received from the bounce buffer"
portion of the commit message.
Thanks
Troy
next prev parent reply other threads:[~2013-09-23 19:12 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-20 3:29 [U-Boot] [PATCH V4 00/17] Make mv_udc work for i.mx6 Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 01/17] usb: gadget: mv_udc: don't check CONFIG_USB_MAX_CONTROLLER_COUNT Troy Kisky
2013-09-20 10:45 ` Marek Vasut
2013-09-20 18:18 ` Troy Kisky
2013-09-23 0:05 ` Marek Vasut
2013-09-23 20:23 ` Troy Kisky
2013-09-23 20:55 ` Troy Kisky
2013-09-23 21:17 ` Marek Vasut
2013-09-20 3:29 ` [U-Boot] [PATCH V4 02/17] usb: ehci-mx6: add support for host mode otg port Troy Kisky
2013-09-20 10:51 ` Marek Vasut
2013-09-20 18:27 ` Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 03/17] usb: gadget: ether set wMaxPacketSize Troy Kisky
2013-09-20 10:52 ` Marek Vasut
2013-09-20 18:34 ` Troy Kisky
2013-09-23 0:04 ` Marek Vasut
2013-09-23 19:51 ` Troy Kisky
2013-09-23 21:22 ` Marek Vasut
2013-09-20 3:29 ` [U-Boot] [PATCH V4 04/17] usb: gadget: ether: return error from rx_submit if no request Troy Kisky
2013-09-20 10:52 ` Marek Vasut
2013-09-20 3:29 ` [U-Boot] [PATCH V4 05/17] usb: gadget: mv_udc: split mv_udc.h file Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 06/17] usb: udc: add udc.h include file Troy Kisky
2013-09-20 10:55 ` Marek Vasut
2013-09-20 18:46 ` Troy Kisky
2013-09-20 18:52 ` Marek Vasut
2013-09-20 19:37 ` Troy Kisky
2013-09-20 19:53 ` Marek Vasut
2013-09-20 21:15 ` Troy Kisky
2013-09-20 21:20 ` Marek Vasut
2013-09-20 21:33 ` Troy Kisky
2013-09-20 22:01 ` Marek Vasut
2013-09-21 0:25 ` Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 07/17] usb: gadget: mv_udc: fix typo in error message Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 08/17] usb: gadget: mv_udc: set is_dualspeed = 1 Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 09/17] usb: gadget: mv_udc: fix full speed connections Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 10/17] usb: gadget: mv_udc: optimize bounce Troy Kisky
2013-09-20 10:58 ` Marek Vasut
2013-09-20 18:58 ` Troy Kisky
2013-09-23 0:02 ` Marek Vasut
2013-09-23 19:12 ` Troy Kisky [this message]
2013-09-23 21:23 ` Marek Vasut
2013-09-20 3:29 ` [U-Boot] [PATCH V4 11/17] usb: gadget: mv_udc: flush item before head Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 12/17] usb: gadget: mv_udc: optimize ep_enable Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 13/17] usb: gadget: mv_udc: zero transfer descriptor memory on probe Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 14/17] usb: gadget: mv_udc: clear desc upon ep_disable Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 15/17] mx6: iomux: add GPR1 defines for use with nitrogen6x Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 16/17] nitrogen6x: add otg usb host/device mode support Troy Kisky
2013-09-20 4:08 ` Troy Kisky
2013-09-20 3:29 ` [U-Boot] [PATCH V4 17/17] nitrogen6x: add CONFIG_MV_UDC Troy Kisky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52409285.5030202@boundarydevices.com \
--to=troy.kisky@boundarydevices.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox