dcd/musb: defer EP0 SETUP during DATA_IN/STATUS race

Handle cases where a new SETUP arrives before the previous control transfer fully completes by buffering the SETUP and replaying it after status completion. Split EP0 DATA state into DATA_IN/DATA_OUT and finalize pending status-out completion before processing deferred SETUP.

Signed-off-by: HiFiPhile <admin@hifiphile.com>
3 files changed