Background info: I'm writing a host controller driver for the i.MX28EVK.
Problem: When reading from device (i.e. the data phase of the control transfer is an IN transaction), host sends a DATA0 packet in the status phase. According to the USB 2.0 standard ch. 8.5.3, this should be a DATA1 packet. Is this a hardware issue? Is there any way to work around or solve the issue?