aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2009-08-02 11:33:00 +0000
committerDean Camera <dean@fourwalledcubicle.com>2009-08-02 11:33:00 +0000
commitc5eeedd522c12c8b4996594f3c4167393d0af7ff (patch)
tree341dc9d942bc518b9c44e3c4ebc3af32d9ef0113 /LUFA
parentac593611c9ec2fc7f097b488c316ce69ac88f3ae (diff)
downloadlufa-c5eeedd522c12c8b4996594f3c4167393d0af7ff.tar.gz
lufa-c5eeedd522c12c8b4996594f3c4167393d0af7ff.tar.bz2
lufa-c5eeedd522c12c8b4996594f3c4167393d0af7ff.zip
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.
Diffstat (limited to 'LUFA')
-rw-r--r--LUFA/Drivers/USB/HighLevel/USBInterrupt.c2
-rw-r--r--LUFA/Drivers/USB/HighLevel/USBTask.c7
-rw-r--r--LUFA/Drivers/USB/HighLevel/USBTask.h1
-rw-r--r--LUFA/ManPages/ChangeLog.txt1
-rw-r--r--LUFA/ManPages/LUFA.gifbin5474 -> 6425 bytes
-rw-r--r--LUFA/ManPages/MainPage.txt4
6 files changed, 5 insertions, 10 deletions
diff --git a/LUFA/Drivers/USB/HighLevel/USBInterrupt.c b/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
index f0a59edb7..51a761ae7 100644
--- a/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
+++ b/LUFA/Drivers/USB/HighLevel/USBInterrupt.c
@@ -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();
diff --git a/LUFA/Drivers/USB/HighLevel/USBTask.c b/LUFA/Drivers/USB/HighLevel/USBTask.c
index 5c7045792..c02a38bf6 100644
--- a/LUFA/Drivers/USB/HighLevel/USBTask.c
+++ b/LUFA/Drivers/USB/HighLevel/USBTask.c
@@ -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);
}
diff --git a/LUFA/Drivers/USB/HighLevel/USBTask.h b/LUFA/Drivers/USB/HighLevel/USBTask.h
index 960131563..9138e687f 100644
--- a/LUFA/Drivers/USB/HighLevel/USBTask.h
+++ b/LUFA/Drivers/USB/HighLevel/USBTask.h
@@ -34,7 +34,6 @@
/* Includes: */
#include <avr/io.h>
#include <avr/interrupt.h>
- #include <util/atomic.h>
#include <stdbool.h>
#include <stddef.h>
diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt
index 7adb95fe0..abda442a3 100644
--- a/LUFA/ManPages/ChangeLog.txt
+++ b/LUFA/ManPages/ChangeLog.txt
@@ -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
diff --git a/LUFA/ManPages/LUFA.gif b/LUFA/ManPages/LUFA.gif
index 885f5b000..7a6aef214 100644
--- a/LUFA/ManPages/LUFA.gif
+++ b/LUFA/ManPages/LUFA.gif
Binary files differ
diff --git a/LUFA/ManPages/MainPage.txt b/LUFA/ManPages/MainPage.txt
index 6c4d431e2..e3b5a497a 100644
--- a/LUFA/ManPages/MainPage.txt
+++ b/LUFA/ManPages/MainPage.txt
@@ -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>
*/