Removed interrupt disable/enable from the Device mode control request processing routines, as they can cause problems with user code and can cause infinite spinlocks under some circumstances.

Added new LUFA logo from EDIGMA.COM.
pull/1469/head
Dean Camera 15 years ago
parent ac593611c9
commit c5eeedd522

@ -252,7 +252,7 @@ ISR(USB_GEN_vect, ISR_BLOCK)
}
#if defined(INTERRUPT_CONTROL_ENDPOINT)
ISR(USB_COM_vect, ISR_BLOCK)
ISR(USB_COM_vect, ISR_NOBLOCK)
{
uint8_t PrevSelectedEndpoint = Endpoint_GetCurrentEndpoint();

@ -68,12 +68,7 @@ static void USB_DeviceTask(void)
Endpoint_SelectEndpoint(ENDPOINT_CONTROLEP);
if (Endpoint_IsSETUPReceived())
{
ATOMIC_BLOCK(ATOMIC_RESTORESTATE)
{
USB_Device_ProcessControlPacket();
}
}
USB_Device_ProcessControlPacket();
Endpoint_SelectEndpoint(PrevEndpoint);
}

@ -34,7 +34,6 @@
/* Includes: */
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/atomic.h>
#include <stdbool.h>
#include <stddef.h>

@ -56,6 +56,7 @@
* from oneanother using foreground colours
* - Internal per-device preprocessing conditions changed to per-device series rather than per-controller group for finer-grain
* internal control
* - Interrupts are no longer disabled during the processing of Control Requests on the default endpoint while in device mode
*
* <b>Fixed:</b>
* - Changed bootloaders to use FLASHEND rather than the existence of RAMPZ to determine if far FLASH pointers are needed to fix

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB

@ -8,7 +8,7 @@
* \mainpage
*
* \n
* \image html LUFA.gif "The Lightweight USB Framework for AVRs"
* \image html LUFA.gif
* \n
*
* For author and donation information, see \ref Page_Donating.
@ -36,5 +36,5 @@
* - \subpage Page_LibraryApps Overview of included Demos, Bootloaders and Projects
*
*
* <small><i>Logo design by Pavla Dlab</i></small>
* <small><i>Logo design by EDIGMA.COM</i></small>
*/

Loading…
Cancel
Save