Get rid of the redundant ATTR_NEVER_INLINE macro which translated to the same as...
[pub/USBasp.git] / LUFA / Drivers / USB / Core / DeviceStandardReq.c
index ef1a278..3176e15 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
@@ -117,16 +117,16 @@ void USB_Device_ProcessControlRequest(void)
 
        if (Endpoint_IsSETUPReceived())
        {
-               Endpoint_StallTransaction();
                Endpoint_ClearSETUP();
+               Endpoint_StallTransaction();
        }
 }
 
 static void USB_Device_SetAddress(void)
 {
-       uint8_t    DeviceAddress    = (USB_ControlRequest.wValue & 0x7F);
-       uint_reg_t CurrentGlobalInt = GetGlobalInterruptMask();
-       GlobalInterruptDisable();
+       uint8_t DeviceAddress = (USB_ControlRequest.wValue & 0x7F);
+
+       USB_Device_SetDeviceAddress(DeviceAddress);
 
        Endpoint_ClearSETUP();
 
@@ -134,10 +134,9 @@ static void USB_Device_SetAddress(void)
 
        while (!(Endpoint_IsINReady()));
 
-       USB_Device_SetDeviceAddress(DeviceAddress);
-       USB_DeviceState = (DeviceAddress) ? DEVICE_STATE_Addressed : DEVICE_STATE_Default;
+       USB_Device_EnableDeviceAddress(DeviceAddress);
 
-       SetGlobalInterruptMask(CurrentGlobalInt);
+       USB_DeviceState = (DeviceAddress) ? DEVICE_STATE_Addressed : DEVICE_STATE_Default;
 }
 
 static void USB_Device_SetConfiguration(void)