-\r
-/** ISR for the general Pipe/Endpoint interrupt vector. This ISR fires when a control request has been issued to the control endpoint,\r
- * so that the request can be processed. As several elements of the Mass Storage implementation require asynchronous control requests\r
- * (such as endpoint stall clearing and Mass Storage Reset requests during data transfers) this is done via interrupts rather than\r
- * polling so that they can be processed regardless of the rest of the application's state.\r
- */\r
-ISR(ENDPOINT_PIPE_vect, ISR_BLOCK)\r
-{\r
- /* Check if the control endpoint has received a request */\r
- if (Endpoint_HasEndpointInterrupted(ENDPOINT_CONTROLEP))\r
- {\r
- /* Process the control request */\r
- USB_USBTask();\r
-\r
- /* Handshake the endpoint setup interrupt - must be after the call to USB_USBTask() */\r
- USB_INT_Clear(ENDPOINT_INT_SETUP);\r
- }\r
-}\r