
Hi Wolfgang,
Grazing through the MPC8308 errata, there don't appear to be any major 'gotchas' with this part. ...
... not unless you try to use USB device mode.
Ah, that is a gotcha then.
Has anyone had any bad experiences with this part, or is there some 'feature' of the part I should be aware of?
USB device mode doesn't work reliably, and FSL was never able or willing to come up with a solution. When this issue happens, the USB device controller not only returns a truncated packet to the gadget driver, but doesn't report URB completion to the host either. The host never gets an URB complete event, so you will see first a delay, and then the host resets the device. The issue can be reproduced with massive writes to a mass-storage device.
The CPCI-S.0 specification defines USB, Ethernet, and PCIe over the backplane.
We're going to use Ethernet for monitor/control traffic, and PCIe for data transfers.
I had planned on using the PowerPC USB interface to implement at least some form of 'USB device' communication with the board, eg., something like USB-to-Serial or CDC class.
In your opinion, is MPC8308 USB Device Mode completely broken?
If that is the case, then if I want a UART over CPCI-S.0 USB, I can use an FTDI FT245/FT232 on the CPCI-S.0 USB interface and wire it into either a PowerPC UART or the system control FPGA.
How about USB Host mode? The board will communicate with a rear transition module (another board plugged in from the rear side of the chassis). If MPC8308 USB Host Mode is reliable, then I can wire the USB interface through the backplane for use on the RTM, eg., for talking to an FT245/232 device or a USB microcontroller.
Thanks for the valuable feedback.
Cheers, Dave