Get rid of the redundant ATTR_NEVER_INLINE macro which translated to the same as...
[pub/USBasp.git] / Bootloaders / CDC / BootloaderCDC.c
index 656f1e0..5f1047e 100644 (file)
@@ -1,13 +1,13 @@
 /*
              LUFA Library
-     Copyright (C) Dean Camera, 2012.
+     Copyright (C) Dean Camera, 2013.
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
-  Copyright 2012  Dean Camera (dean [at] fourwalledcubicle [dot] com)
+  Copyright 2013  Dean Camera (dean [at] fourwalledcubicle [dot] com)
 
   Permission to use, copy, modify, distribute, and sell this
   software and its documentation for any purpose is hereby granted
@@ -223,21 +223,29 @@ void EVENT_USB_Device_ControlRequest(void)
                        }
 
                        break;
+        case CDC_REQ_SetControlLineState:
+               if (USB_ControlRequest.bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
+               {
+                   Endpoint_ClearSETUP();
+                   Endpoint_ClearStatusStage();
+               }
+
+               break;
        }
 }
 
 #if !defined(NO_BLOCK_SUPPORT)
 /** Reads or writes a block of EEPROM or FLASH memory to or from the appropriate CDC data endpoint, depending
- *  on the AVR910 protocol command issued.
+ *  on the AVR109 protocol command issued.
  *
- *  \param[in] Command  Single character AVR910 protocol command indicating what memory operation to perform
+ *  \param[in] Command  Single character AVR109 protocol command indicating what memory operation to perform
  */
 static void ReadWriteMemoryBlock(const uint8_t Command)
 {
        uint16_t BlockSize;
        char     MemoryType;
 
-       bool     HighByte = false;
+       uint8_t  HighByte = 0;
        uint8_t  LowByte  = 0;
 
        BlockSize  = (FetchNextCommandByte() << 8);
@@ -394,7 +402,7 @@ static void WriteNextResponseByte(const uint8_t Response)
        Endpoint_Write_8(Response);
 }
 
-/** Task to read in AVR910 commands from the CDC data OUT endpoint, process them, perform the required actions
+/** Task to read in AVR109 commands from the CDC data OUT endpoint, process them, perform the required actions
  *  and send the appropriate response back to the host.
  */
 static void CDC_Task(void)