---------- Forwarded message ----------
From: Rupesh Kumar <[EMAIL PROTECTED]>
Date: Oct 10, 2006 1:37 PM
Subject: TD Hash table getting corrupted with Isochoronous transfers
To: [EMAIL PROTECTED]
Cc: [email protected], [email protected]
Hi All,
I am working on embedded OHCI USB host controller on which i am using
linux-2.6.14.
With Isochronous transfers after some time my board is getting hanged.
I observed that the TD Hash table is getting corrupted.
According to the OHCI Specification there is chance for 8 PSWs but in
the driver we are using only 2 PSW.but my hardware is always doing
8PSW DMA Transfer there by hardware is overwriting the Software fields
sitting immediately after the PSW.
struct td
{
/* first fields are hardware-specified */
__hc32 hwINFO; /* transfer info bitmask */
__hc32 hwCBP; /* Current Buffer Pointer (or 0) */
__hc32 hwNextTD; /* Next TD Pointer */
__hc32 hwBE; /* Memory Buffer End Pointer */
/* PSW is only for ISO. Only 1 PSW entry is used, but on
* big-endian PPC hardware that's the second entry.
*/
#define MAXPSW 2
__hc16 hwPSW [MAXPSW];
/* rest are purely for the driver's use */
__u8 index;
struct ed *ed;
struct td *td_hash; /* dma-->td hashtable */
struct td *next_dl_td;
struct urb *urb;
}
What is reason for giving only 2 PSW can we give extra 6 PSW to
overcome this issue.
Is it a hardware issue.
Regards
Kumar
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel