* OMAP34xx EHCI bulk OUT CRC16 complementing
@ 2008-02-20 5:47 Pandita, Vikram
[not found] ` <5DF83221BE20114E9C331F665ACBC080044F7C2C-tvxpnMfVbg6IQmiDNMet8wC/G2K4zDHf@public.gmane.org>
0 siblings, 1 reply; 2+ messages in thread
From: Pandita, Vikram @ 2008-02-20 5:47 UTC (permalink / raw)
To: linux-omap-u79uwXL29TY76Z2rM5mHXA,
linux-usb-u79uwXL29TY76Z2rM5mHXA
USB EHCI/OHCI experts
On omap-git v2.6.25-rc2, TI OMAP34xx EHCI controller, we are seeing a strange behavior on a bulk OUT 512 byte transfer.
We can see through the CATC that the 512 byte goes out successfully but there are many Turnaround/Timeout Errors and retries before the packet goes out successfully.
The retries could range from 0 to 10 or more.
The error packets have 'CRC16 complemented' as per Section 8.6.4 page 234-235 that says for probably a data under-run condition:
"An error for high-speed must be forced by taking the currently calculated CRC and complementing it before transmitting it."
We have confirmed that our Memory (SDRAM) access have a much higher bandwidth available "not" to cause data under-run condition.
Where in EHCI stack should I debug for this issue?
I am checking: qh_append_tds()
Not sure how this "Dummy" qtd is implemented. Anything to do with this?
Is there a way to slow-down the OUT transfers on EHCI if that helps in debugging?
Regards
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: OMAP34xx EHCI bulk OUT CRC16 complementing
[not found] ` <5DF83221BE20114E9C331F665ACBC080044F7C2C-tvxpnMfVbg6IQmiDNMet8wC/G2K4zDHf@public.gmane.org>
@ 2008-02-22 22:07 ` David Brownell
0 siblings, 0 replies; 2+ messages in thread
From: David Brownell @ 2008-02-22 22:07 UTC (permalink / raw)
To: Pandita, Vikram
Cc: linux-omap-u79uwXL29TY76Z2rM5mHXA,
linux-usb-u79uwXL29TY76Z2rM5mHXA
On Tuesday 19 February 2008, Pandita, Vikram wrote:
> USB EHCI/OHCI experts
>
> On omap-git v2.6.25-rc2, TI OMAP34xx EHCI controller, we are seeing a
> strange behavior on a bulk OUT 512 byte transfer.
>
> We can see through the CATC that the 512 byte goes out successfully
> but there are many Turnaround/Timeout Errors and retries before the
> packet goes out successfully.
> The retries could range from 0 to 10 or more.
>
> The error packets have 'CRC16 complemented' as per Section 8.6.4
> page 234-235 that says for probably a data under-run condition:
> "An error for high-speed must be forced by taking the currently
> calculated CRC and complementing it before transmitting it."
>
> We have confirmed that our Memory (SDRAM) access have a much higher
> bandwidth available "not" to cause data under-run condition.
>
> Where in EHCI stack should I debug for this issue?
Doesn't sound like an EHCI driver issue. I'd want to track
what's going on deeper inside the silicon than ARM instruction
set handling ... ;)
> Is there a way to slow-down the OUT transfers on EHCI if that
> helps in debugging?
You could issue URBs with single packets. If you're not using
the "usbtest" framework, you should start ... that command line
tool lets you send a variety of packet sequences. You'll want
some high speed source/sink device, like another board running
the "Gadget Zero" firmware.
- Dave
[1] http://www.linux-usb.org/usbtest/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-02-22 22:07 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-20 5:47 OMAP34xx EHCI bulk OUT CRC16 complementing Pandita, Vikram
[not found] ` <5DF83221BE20114E9C331F665ACBC080044F7C2C-tvxpnMfVbg6IQmiDNMet8wC/G2K4zDHf@public.gmane.org>
2008-02-22 22:07 ` David Brownell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox