dwc_otg: NAK holdoff 2.0

The NAK holdoff previously implemented had a few gnarly
edges:
- periodic transactions would get their scheduling messed
  up if a NAK holdoff came into effect and went past the
  scheduled time of the periodic transaction
- SOF kept getting passed through to to the driver during
  a NAK holdoff

This commit fixes those issues, and the NAK holdoff is now
an adjustable parameter. dwc_otg.nak_holdoff=(ushort) can
be set to throttle bulk split-transactions by n microframes.