aboutsummaryrefslogtreecommitdiffstats
path: root/Demos/CDC/CDC.c
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2009-03-10 05:56:17 +0000
committerDean Camera <dean@fourwalledcubicle.com>2009-03-10 05:56:17 +0000
commit38039765346c7441208dbcb3fd3cf8f13b7ced58 (patch)
treeaafe05db569ec7a2938b3e7cdbd63e4a5d6a054e /Demos/CDC/CDC.c
parent4a09da20989dfe0c41dc1272fa6dce1e11539c15 (diff)
downloadlufa-38039765346c7441208dbcb3fd3cf8f13b7ced58.tar.gz
lufa-38039765346c7441208dbcb3fd3cf8f13b7ced58.tar.bz2
lufa-38039765346c7441208dbcb3fd3cf8f13b7ced58.zip
Fixed incorrect/missing control status stage transfers on demos, bootloaders and applications (thanks to Nate Lawson).
Diffstat (limited to 'Demos/CDC/CDC.c')
-rw-r--r--Demos/CDC/CDC.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/Demos/CDC/CDC.c b/Demos/CDC/CDC.c
index eeae625cf..6e933d581 100644
--- a/Demos/CDC/CDC.c
+++ b/Demos/CDC/CDC.c
@@ -171,7 +171,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
case REQ_GetLineEncoding:
if (bmRequestType == (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE))
{
- /* Acknowedge the SETUP packet, ready for data transfer */
+ /* Acknowledge the SETUP packet, ready for data transfer */
Endpoint_ClearSetupReceived();
/* Write the line coding data to the control endpoint */
@@ -185,7 +185,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
case REQ_SetLineEncoding:
if (bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
{
- /* Acknowedge the SETUP packet, ready for data transfer */
+ /* Acknowledge the SETUP packet, ready for data transfer */
Endpoint_ClearSetupReceived();
/* Read the line coding data in from the host into the global struct */
@@ -210,10 +210,11 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
// Do something with the given line states in wIndex
#endif
- /* Acknowedge the SETUP packet, ready for data transfer */
+ /* Acknowledge the SETUP packet, ready for data transfer */
Endpoint_ClearSetupReceived();
- /* Send an empty packet to acknowedge the command */
+ /* Acknowledge status stage */
+ while (!(Endpoint_IsSetupINReady()));
Endpoint_ClearSetupIN();
}