M54455EVB USB Does Not Work!

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

M54455EVB USB Does Not Work!

2,021 Views
simath
Contributor I
I do not believe that USB support in the Linux BSP for the M54455EVB is actually functioning - but perhaps I'm missing something.  I have tried both the built-in FS/LS port (selected using S1-4 to disable the ULPI interface) and the OTG UTMI/ULPI.  I have tried both host and device connection on the OTG port as well as host only ("A" connector) for the FS/LS port with HID and Mass Storage devices.  Here are more details:
 
1) The USB_VBUS_EN pin never goes high, so neither the ULPI interface nor the FS/LS connector ever see a bus pullup - thus nothing can ennumerate!
2) I have probed U929 to verify this.  The ENB pin NEVER goes high, so the FS/LS "A" connector VBUS pin never gets pulled to VCC (5V).
3) I see that the Linux support is there (usbfs is mounted, OTG host registered, usb hub support registered, etc.).  I NEVER see any entry in /proc/bus/usb when any type of device is connected.  This is to be expected since VBUS never gets enabled.
4) Even without VBUS power, D+ should still (???) get pulled-up so a HID or MS device should still ennumerate through a self-powered hub - doesn't work though?!? 
 
I suspect, at this point, that USB support for this BSP isn't actually FUNCTIONAL - but that isn't described in any errata I've seen.  Has anyone actually used this EVB, and figured out how to get USB to work?!?
 
Also (see my other post on CPLD issue), I'm convinced that the FlexBus interface to the CPLD is not functional as specified (either the CPLD code actually has it mapped somewhere else, or it's non-functional).  This is relevent to the USB issue (possibly) because the CPLD controls the ULPI reset signal (to select either the FS/LS on-chip PHY, or the OTG external ULPI PHY under either firmware or S1-4 control).  Obviously the CPLD is working and programmed (LEDs blink, other important stuff is working).
 
So...  This is my FIRST experience using a ColdFire product.  I need to choose between an AMCC PPC405 and the (cheaper) V4 ColdFire for a new product.  So far, the ColdFire EVB isn't impressing me!!!
 
BTW:  Note that you need to remove the back panel connector shield to actually get proper contact for the OTG mini-connector.  "They" didn't make the cutout large enough to get a standard mini-cable through!!!
 
Anybody out there using this thing with any success (USB that is)?!?
Labels (1)
0 Kudos
Reply
4 Replies

441 Views
simath
Contributor I
THANKS!  That worked (flashed the pre-built uImage - haven't tried a kernel build yet on the 1-Oct BSP).  It's great to get help from the guy who built the kernel image!!!
 
0 Kudos
Reply

441 Views
simath
Contributor I
WOW!  Thanks for the super fast response!  What a great forum.
 
Sorry I didn't put in all the details (post was already too long).  Indeed I knew about modprobe as described in the .htm doc you mentioned.  BTW - I cut a bigger hole in the panel (no big deal, just poor quality control on the part of Freescale mfg.).
 
I get various errors after executing modprobe - here's an example:
 
/ # modprobe ehci-hcd
fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
BUG: soft lockup detected on CPU#0!
Stack from cfdebe94:
        00000000 bfafbba0 c0032a30(update_process_times+0x60/0x8e) 00000060 0000
0000 c0022896(timer_interrupt+0x34/0x46) 00000000 00000001
        c0026048(process_int+0x70/0xac) 00000060 fc070000 bfafa000 bfaf2004 cfde
bf50 c0023e4e(auto_irqhandler_fixup+0x4/0x6) 00000060
        cfdebed8 00000003 bfafa000 bfaf2004 00000001 0000000a c04d45f4(0xc04d45f
4) cfebd010
        cff9aa10 00000000 ffffffff 00000000 bfafab9c 00000000 41802004 c00235e8(
cf_tlb_miss+0xfa/0x162)
        0000000a bfafab9c 00000000 00000044 c0025904(buserr_c+0x132/0x15e) cfdeb
f50 00000001 00000001
        00000000 00000000 00000000 00000000 c01aaf34(cond_resched+0x0/0x38) c002
3c36(buserr+0x32/0x38) cfdebf50 cffd203c
Call Trace:
        [<c002b10a>] [<c003b1a4>] [<c0023d3a>]
 
I re-checked all the JP and SW settings (one of the BDM port JPs wasn't set as spec. for factory defaults, but that shouldn't affect anything else???).  I must be missing something else, or there is a hardware problem with my board.  Any ideas??? 
 
0 Kudos
Reply

441 Views
kmahan
Contributor I
You've run into a problem that was in the original Beta BSP that was released.  A bug crept in that caused that panic.  We released an updated Beta BSP on Oct 1 (I'm not sure what it was called externally) with that problem fixed.

Give the updated BSP a try and see if that resolves your problem.  If you still have issues let me know.

--Kurt
0 Kudos
Reply

441 Views
kmahan
Contributor I
Sorry to read you can't get USB working with the Linux BSP.  You're description doesn't mention whether you loaded the USB module.  If you haven't that would account for what you are seeing.

There is a USB document named USB_MCF5445x.htm in the BSP under Help/software/device_drivers/ .  This file documents the USB functionality in this BSP.  It also covers the test procedures used to verify USB.

To load the USB host driver do:
    # modprobe ehci-hcd

The document doesn't explicity mention it but the transceiver choice (FS/LS vs. ULPI) is actually a kernel config option.  The dip switches won't change things.

The back panel pops out from the inside (which is what I do).

Hopefully this will enable you to use USB with the BSP.  If you are still having problems please post a reply.  It would be helpful to get the console logs.


0 Kudos
Reply