Patent ID: 8200856

Claim:
An apparatus comprising: a processor to: determine a capability of a Universal Serial Bus (USB) device to exchange data with a USB host at a future time based, at least in part, on a buffer capacity, at a selected time prior to the future time send a first notification for flow control to the USB host based on the determined capability of the USB device, receive token packets at a slower rate from the USB host in response to the first notification following an interim period of time that begins with the selected time and ends prior to the future time or at the future time, at a second selected time subsequent to the future time, send a second notification for flow control to the USB host in response to a determination that the capability of the USB device to exchange data with the USB host has changed based, at least in part, on the buffer capacity, and receive additional token packets at a rate that is different from the slower rate from the USB host in response to the second notification, and wherein no other notifications for flow control are sent by the USB device to the USB host between the selected time and the second selected time; and a memory coupled to the processor.