USB enumeration failure in ColdFire MCF52259
- by Quicksilver
Anybody with programming experience on the ColdFire line, please help!
I'm using the CMX USB-Lite stack with the ColdFire MCF52259. For some reason, USB enumeration fails at the very first step, as soon as I enable the DP pull-up resistor. This is what I'm doing :-
INT_ENB, OTG_INT_EN, ERR_ENB are set to 0x0
INT_STAT, OTG_INT_STAT and ERR_STAT are set to 0xff (This should clear all interrupts)
In the Interrupt Status Register, bits 0 (Mask All) and 53 are made 0, all others are 1.
TOK_DNE, USB_RST and STALL interrupts are enabled in INT_ENB.
BDT base address is set.
MCF_USB_CTL holds 0x1
PROBLEM:
After the host issues the first reset (at which point I enable Control endpoint 0), instead of the expected Get Descriptor request I'm getting an endless series of resets. At least, that's what it looks like, because the TOK_DNE interrupt never triggers.
Is there anything I'm doing wrong?