State information for class drivers is now zeroed out during enumeration (both in...
[pub/USBasp.git] / Bootloaders / TeensyHID / TeensyHID.c
index 12d5c0d..67dded5 100644 (file)
@@ -54,9 +54,6 @@ int main(void)
        \r
        while (RunBootloader)\r
          USB_USBTask();\r
-       \r
-       /* Reset all configured hardware to their default states for the user app */\r
-       ResetHardware();\r
 \r
        /* Wait 100ms to give the host time to register the disconnection */\r
        _delay_ms(100);\r
@@ -85,13 +82,6 @@ void SetupHardware(void)
        USB_Init();\r
 }\r
 \r
-/** Resets all configured hardware required for the bootloader back to their original states. */\r
-void ResetHardware(void)\r
-{\r
-       /* Shut down the USB subsystem */\r
-       USB_ShutDown();\r
-}\r
-\r
 /** Event handler for the USB_ConfigurationChanged event. This configures the device's endpoints ready\r
  *  to relay data to and from the attached USB host.\r
  */\r
@@ -119,7 +109,7 @@ void EVENT_USB_UnhandledControlPacket(void)
                                \r
                                /* Wait until the command (report) has been sent by the host */\r
                                while (!(Endpoint_IsOUTReceived()));\r
-\r
+                       \r
                                /* Read in the write destination address */\r
                                uint16_t PageAddress = Endpoint_Read_Word_LE();\r
                                \r
@@ -158,9 +148,7 @@ void EVENT_USB_UnhandledControlPacket(void)
 \r
                                Endpoint_ClearOUT();\r
 \r
-                               /* Acknowledge status stage */\r
-                               while (!(Endpoint_IsINReady()));\r
-                               Endpoint_ClearIN();\r
+                               Endpoint_ClearStatusStage();\r
                        }\r
                        \r
                        break;\r