AT91RM9200: USB broken?

Hans Petter Selasky hselasky at c2i.net
Tue Jul 20 12:08:42 UTC 2010


On Tuesday 20 July 2010 14:04:53 Greg Ansley wrote:
> While regression testing my patches, I found that USB is not working on
> the AT91RM9200 from head (pre-patch). Error shown are the same with or
> without a USB device attached.
> 
> Just wondering of anyone has any insights before I spend time going down
> this rabbit hole...
> 
> KB920x >go 0x200000e0
> ## Starting application at 0x200000E0 ...
> KDB: debugger backends: ddb
> KDB: current backend: ddb
> Copyright (c) 1992-2010 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
> The Regents of the University of California. All rights reserved.
> FreeBSD is a registered trademark of The FreeBSD Foundation.
> FreeBSD 9.0-CURRENT #1: Tue Jul 20 07:49:38 EDT 2010
> gja at DL380.internal.ansley.com:/usr/obj/arm.arm/usr/home/gja/freebsd-sam9g20
> /svn2/sys/KB920X arm
> CPU: ARM920T rev 0 (ARM9TDMI core)
> DC enabled IC enabled WB enabled LABT
> 16KB/32B 64-way Instruction cache
> 16KB/32B 64-way write-back-locking-A Data cache
> real memory = 67108864 (64 MB)
> avail memory = 61509632 (58 MB)
> atmelarm0: <AT91 device bus> on motherboard
> at91_st0: <ST> mem 0xdffffd00-0xdffffdff irq 1 on atmelarm0
> at91_st0: watchdog registered, timeout intervall max. 64 sec
> at91_pio0: <PIOA> mem 0xdffff400-0xdffff5ff irq 1 on atmelarm0
> at91_pio0: ABSR: 0x60 OSR: 0 PSR:0x3f380000 ODSR: 0
> at91_pio0: [FILTER]
> at91_pio1: <PIOB> mem 0xdffff600-0xdffff7ff irq 1 on atmelarm0
> at91_pio1: ABSR: 0xff301 OSR: 0x2 PSR:0x3fc00cfe ODSR: 0
> at91_pio1: [FILTER]
> at91_pio2: <PIOC> mem 0xdffff800-0xdffff9ff irq 1 on atmelarm0
> at91_pio2: ABSR: 0 OSR: 0x1000000a PSR:0xffffc075 ODSR: 0x10000000
> at91_pio2: [FILTER]
> at91_pio3: <PIOD> mem 0xdffffa00-0xdffffbff irq 1 on atmelarm0
> at91_pio3: ABSR: 0 OSR: 0 PSR:0xfffffff ODSR: 0
> at91_pio3: [FILTER]
> at91_pmc0: <PMC> mem 0xdffffc00-0xdffffcff irq 1 on atmelarm0
> at91_pmc0: Primary: 10000000 Hz PLLA: 180 MHz CPU: 180 MHz MCK: 60 MHz
> at91_mci0: <MCI mmc/sd host bridge> mem 0xdffb4000-0xdffb7fff irq 10 on
> atmelarm0
> at91_mci0: [ITHREAD]
> mmc0: <MMC/SD bus> on at91_mci0
> at91_twi0: <TWI> mem 0xdffb8000-0xdffbbfff irq 12 on atmelarm0
> at91_twi0: [ITHREAD]
> iicbus0: <Philips I2C bus> on at91_twi0
> setting cwgr to 0x1a4a4
> iic0: <I2C generic I/O> on iicbus0
> icee0: <I2C EEPROM> at addr 0xa0 on iicbus0
> ate0: <EMAC> mem 0xdffbc000-0xdffbffff irq 24 on atmelarm0
> miibus0: <MII bus> on ate0
> ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0
> ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
> ate0: Ethernet address: 04:00:00:00:00:00
> ate0: [ITHREAD]
> uart0: <DBGU> mem 0xdffff200-0xdffff3ff irq 1 on atmelarm0
> uart0: [FILTER]�uart0: console (115200,n,8,1)
> uart1: <USART0> mem 0xdffc0000-0xdffc3fff irq 6 on atmelarm0
> uart1: [FILTER]
> uart2: <USART1> mem 0xdffc4000-0xdffc7fff irq 7 on atmelarm0
> uart2: [FILTER]
> uart3: <USART2> mem 0xdffc8000-0xdffcbfff irq 8 on atmelarm0
> uart3: [FILTER]
> uart4: <USART3> mem 0xdffcc000-0xdffcffff irq 9 on atmelarm0
> uart4: [FILTER]
> spi0: <SPI> mem 0xdffe0000-0xdffe3fff irq 13 on atmelarm0
> spi0: [ITHREAD]
> spibus0: <spibus bus> on spi0
> ohci0: <AT91 integrated OHCI controller> mem 0xdfe00000-0xdfefffff irq
> 23 on atmelarm0
> ohci0: [ITHREAD]
> usbus0 on ohci0
> Cannot get 100 Hz clock; using 100Hz
> at91_st0: [FILTER]
> Timecounter "AT91RM9200 timer" frequency 32768 Hz quality 1000
> Timecounters tick every 10.000 msec
> usbus0: 12Mbps Full Speed USB v1.0
> Root mount waiting for: usbus0
> ugen0.1: <Atmel> at usbus0
> uhub0: <Atmel OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
> uhub0: 2 ports with 2 removable, self powered
> Root mount waiting for: usbus0
> usb_alloc_device: set address 2 failed (USB_ERR_IOERROR, ignored)
> usb_alloc_device: getting device descriptor at addr 2 failed,
> USB_ERR_IOERROR
> usbd_req_re_enumerate: addr=2, set address failed! (USB_ERR_IOERROR,
> ignored)
> usbd_req_re_enumerate: getting device descriptor at addr 2 failed,
> USB_ERR_IOERROR
> Root mount waiting for: usbus0
> usbd_req_re_enumerate: addr=2, set address failed! (USB_ERR_IOERROR,
> ignored)
> Root mount waiting for: usbus0
> usbd_req_re_enumerate: getting device descriptor at addr 2 failed,
> USB_ERR_IOERROR
> ugen0.2: <(null)> at usbus0 (disconnected)
> uhub_reattach_port: could not allocate new device
> Trying to mount root from ufs:/dev/mmcsd0s1a
> 

Hi,

I think those messages are normal, because one of the USB ports is not 
connected.

What messages do you get when plugging in a real USB device?

--HPS


More information about the freebsd-arm mailing list