When will SOF be sent for a device who has an isochronous interface? All the time after the isochronous interface has been enabled? Or just during isochronous transfering?
If an isochronous interface is enabled, but no data and no request(IN) are issued, what status should be? Can the bus be suspended? Or MUST SOF be sent all the way to keep synchronization?
For normal application, SOF have to be sent to keep synchronous between TX and RX.
But if the idle time is to long, you can stop sending SOF and let RX enter suspend for power saving consideration.
In fact, what confused me is that SOF is sent by host every ms(1ms interval). But device just can get into suspend state only when bus keeps idle for 3.5ms.
How can bus be idle for 3.5ms if host keep sending SOF? Host get into suspend first? Why can host get into suspend if device has not get into suspend? What is the sequence of suspend in usb system?