aboutsummaryrefslogtreecommitdiffstats
path: root/Bootloaders
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2009-04-22 13:03:11 +0000
committerDean Camera <dean@fourwalledcubicle.com>2009-04-22 13:03:11 +0000
commitd860e9e842c05e759214f5170f78783decae9956 (patch)
tree688f408e32d6f4d205fce4bd33e953199c9ea7dc /Bootloaders
parente5e7eaee7af719cee00a8c2cb6fb4649dde0aa05 (diff)
downloadlufa-d860e9e842c05e759214f5170f78783decae9956.tar.gz
lufa-d860e9e842c05e759214f5170f78783decae9956.tar.bz2
lufa-d860e9e842c05e759214f5170f78783decae9956.zip
USB_HostRequest renamed to USB_ControlRequest, entire control request header is now read into USB_ControlRequest in Device mode rather than having the library pass only partially read header data to the application.
The USB_UnhandledControlPacket event has had its parameters removed, in favour of accessing the new USB_ControlRequest structure. The Endpoint control stream functions now correctly send a ZLP to the host when less data than requested is sent.
Diffstat (limited to 'Bootloaders')
-rw-r--r--Bootloaders/CDC/BootloaderCDC.c10
-rw-r--r--Bootloaders/DFU/BootloaderDFU.c10
-rw-r--r--Bootloaders/TeensyHID/TeensyHID.c4
3 files changed, 8 insertions, 16 deletions
diff --git a/Bootloaders/CDC/BootloaderCDC.c b/Bootloaders/CDC/BootloaderCDC.c
index 6b69421e0..708ba359d 100644
--- a/Bootloaders/CDC/BootloaderCDC.c
+++ b/Bootloaders/CDC/BootloaderCDC.c
@@ -152,13 +152,11 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
{
uint8_t* LineCodingData = (uint8_t*)&LineCoding;
- Endpoint_Discard_Word();
-
/* Process CDC specific control requests */
- switch (bRequest)
+ switch (USB_ControlRequest.bRequest)
{
case REQ_GetLineEncoding:
- if (bmRequestType == (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE))
+ if (USB_ControlRequest.bmRequestType == (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE))
{
Endpoint_ClearSETUP();
@@ -174,7 +172,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
break;
case REQ_SetLineEncoding:
- if (bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
+ if (USB_ControlRequest.bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
{
Endpoint_ClearSETUP();
@@ -192,7 +190,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
break;
case REQ_SetControlLineState:
- if (bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
+ if (USB_ControlRequest.bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
{
Endpoint_ClearSETUP();
diff --git a/Bootloaders/DFU/BootloaderDFU.c b/Bootloaders/DFU/BootloaderDFU.c
index 289b4eb22..83881f13e 100644
--- a/Bootloaders/DFU/BootloaderDFU.c
+++ b/Bootloaders/DFU/BootloaderDFU.c
@@ -151,16 +151,10 @@ EVENT_HANDLER(USB_Disconnect)
*/
EVENT_HANDLER(USB_UnhandledControlPacket)
{
- /* Discard unused wIndex value */
- Endpoint_Discard_Word();
-
- /* Discard unused wValue value */
- Endpoint_Discard_Word();
-
/* Get the size of the command and data from the wLength value */
- SentCommand.DataSize = Endpoint_Read_Word_LE();
+ SentCommand.DataSize = USB_ControlRequest.wLength;
- switch (bRequest)
+ switch (USB_ControlRequest.bRequest)
{
case DFU_DNLOAD:
Endpoint_ClearSETUP();
diff --git a/Bootloaders/TeensyHID/TeensyHID.c b/Bootloaders/TeensyHID/TeensyHID.c
index e81c462a0..cb1407ad4 100644
--- a/Bootloaders/TeensyHID/TeensyHID.c
+++ b/Bootloaders/TeensyHID/TeensyHID.c
@@ -96,10 +96,10 @@ EVENT_HANDLER(USB_ConfigurationChanged)
EVENT_HANDLER(USB_UnhandledControlPacket)
{
/* Handle HID Class specific requests */
- switch (bRequest)
+ switch (USB_ControlRequest.bRequest)
{
case REQ_SetReport:
- if (bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
+ if (USB_ControlRequest.bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
{
Endpoint_ClearSETUP();