Subject: port-evbmips/32355: USB clocking incorrect for Au1550 boards
To: None <port-evbmips-maintainer@netbsd.org, gnats-admin@netbsd.org,>
From: None <garrett_damore@tadpole.com>
List: netbsd-bugs
Date: 12/21/2005 18:30:00
>Number:         32355
>Category:       port-evbmips
>Synopsis:       USB clocking incorrect for Au1550 boards
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    port-evbmips-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Dec 21 18:30:00 +0000 2005
>Originator:     Garrett D'Amore
>Release:        3.99.14
>Organization:
Tadpole Computer, Inc.
>Environment:
System: NetBSD cabernet 3.99.14 NetBSD 3.99.14 (PB1000) #0: Wed Dec 21 09:39:37
PST 2005 garrett@zippy:/home/garrett/work/meteor/netbsd/src/sys/arch/evbmips/com
pile/obj/PB1000 evbmips
Architecture: mipsel
Machine: evbmips

>Description:
The USB host is inoperable on Au1550 processors.  The symptom is that when you plug a device in the port, you get a message that says:

uhub0: device problem, disabling port 2

The root problem is that machdep.c tries to set up some clocking for the USB which does not jive with what YAMON has configured, and is incorrect.

YAMON programs USB clocks on both the DBAu1500 and DBAu1550 boards I have, and should not be overridden.  I am not sure about other products, but if they need this clock setup, then it should be conditionalized somehow.  (Board specific logic will be the topic of another PR...)
>How-To-Repeat:
Plug device in.
>Fix:
Remove the clocking setup logic for USB in machdep.c.  I'll send a diff shortly.