linux-mips
[Top] [All Lists]

Re: Porting Au1x000 USB host controller on u-boot

To: Rodolfo Giometti <giometti@linux.it>
Subject: Re: Porting Au1x000 USB host controller on u-boot
From: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Date: Thu, 04 May 2006 21:06:02 +0400
Cc: Linux-MIPS <linux-mips@linux-mips.org>
In-reply-to: <20060504095341.GB19913@gundam.enneenne.com>
Organization: MontaVista Software Inc.
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <20060504095341.GB19913@gundam.enneenne.com>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mozilla/5.0 (X11; U; Linux i686; rv:1.7.2) Gecko/20040803
Hello,

Rodolfo Giometti wrote:

I'm trying to implement support for USB host into u-boot. I
initialized the USB controller just as linux does, the EDs and the TDs
look like good in memory but the controller seems not well reading
them and on the bus I see random USB messages...

I think that there could be some problem on memory coherency... some
suggestion?

Be sure to set Config0.OD (bit 19), it's proven to fix the USB-related lockups on Au1500 at least. See arch/mips/common/cputable.c for the CPU steppings where it must be set to mask various errata. Also, try to disable USB controller's DMA coherency in the USB enable register (there's a related errata in all Au1xx0 family) -- the Linux driver doesn't do this though, and this shouldn't matter unless you're modifying USB buffers on the fly. :-) Also, note that this magic bit may be write only, so make sure it's set on every write to CP0 Config0 reg. See this patch:

http://www.linux-mips.org/archives/linux-mips/2006-03/msg00243.html

Thanks,

Rodolfo

WBR, Sergei

<Prev in Thread] Current Thread [Next in Thread>