Fix compile error on the UC3 targets when INTERRUPT_CONTROL_ENDPOINT compile time...
authorDean Camera <dean@fourwalledcubicle.com>
Wed, 28 Sep 2011 13:24:08 +0000 (13:24 +0000)
committerDean Camera <dean@fourwalledcubicle.com>
Wed, 28 Sep 2011 13:24:08 +0000 (13:24 +0000)
Small size improvement for Little Endian devices when USB host mode is used.

Minor documentation fixes.

LUFA/Drivers/USB/Core/HostStandardReq.c
LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.c
LUFA/ManPages/DeviceSupport.txt
LUFA/ManPages/FutureChanges.txt
LUFA/ManPages/LUFAPoweredProjects.txt

index 5bbe5d3..55fee40 100644 (file)
@@ -55,12 +55,19 @@ uint8_t USB_Host_SendControlRequest(void* const BufferPtr)
 
        Pipe_Unfreeze();
 
 
        Pipe_Unfreeze();
 
+       #if defined(ARCH_BIG_ENDIAN)
        Pipe_Write_8(USB_ControlRequest.bmRequestType);
        Pipe_Write_8(USB_ControlRequest.bRequest);
        Pipe_Write_16_LE(USB_ControlRequest.wValue);
        Pipe_Write_16_LE(USB_ControlRequest.wIndex);
        Pipe_Write_16_LE(USB_ControlRequest.wLength);
        Pipe_Write_8(USB_ControlRequest.bmRequestType);
        Pipe_Write_8(USB_ControlRequest.bRequest);
        Pipe_Write_16_LE(USB_ControlRequest.wValue);
        Pipe_Write_16_LE(USB_ControlRequest.wIndex);
        Pipe_Write_16_LE(USB_ControlRequest.wLength);
+       #else
+       uint8_t* HeaderStream = (uint8_t*)&USB_ControlRequest;
 
 
+       for (uint8_t HeaderByte = 0; HeaderByte < sizeof(USB_Request_Header_t); HeaderByte++)
+         Pipe_Write_Byte(*(HeaderStream++));   
+       #endif
+       
        Pipe_ClearSETUP();
 
        if ((ReturnStatus = USB_Host_WaitForIOS(USB_HOST_WAITFOR_SetupSent)) != HOST_SENDCONTROL_Successful)
        Pipe_ClearSETUP();
 
        if ((ReturnStatus = USB_Host_WaitForIOS(USB_HOST_WAITFOR_SetupSent)) != HOST_SENDCONTROL_Successful)
index fec007c..3487087 100644 (file)
@@ -206,7 +206,7 @@ ISR(USB_GEN_vect)
 }
 
 #if defined(INTERRUPT_CONTROL_ENDPOINT) && defined(USB_CAN_BE_DEVICE)
 }
 
 #if defined(INTERRUPT_CONTROL_ENDPOINT) && defined(USB_CAN_BE_DEVICE)
-ISR(USB_COM_vect, ISR_BLOCK)
+ISR(USB_COM_vect)
 {
        uint8_t PrevSelectedEndpoint = Endpoint_GetCurrentEndpoint();
 
 {
        uint8_t PrevSelectedEndpoint = Endpoint_GetCurrentEndpoint();
 
index 061c6ac..b3af29b 100644 (file)
  
 /**
  *  \page Page_XMEGASupport Atmel USB XMEGA AVR (XMEGA)
  
 /**
  *  \page Page_XMEGASupport Atmel USB XMEGA AVR (XMEGA)
- *  Note: <i>The XMEGA device support is currently <b>experimental</b>, and is included for preview purposes only.</i>
+ *  Note: <i>The XMEGA device support is currently <b>experimental</b> (incomplete and/or non-functional), and is included for preview purposes only.</i>
  *
  *  \section Sec_XMEGASupport_Devices Supported Microcontroller Models
  *
  *
  *  \section Sec_XMEGASupport_Devices Supported Microcontroller Models
  *
index b3527b0..83c4880 100644 (file)
@@ -29,6 +29,7 @@
   *      -# Make HOST_DEVICE_SETTLE_DELAY_MS a global variable that can be changed
   *      -# Add MANDATORY_EVENT_FUNCTIONS compile time option
   *      -# Add watchdog support to the library and apps/bootloaders
   *      -# Make HOST_DEVICE_SETTLE_DELAY_MS a global variable that can be changed
   *      -# Add MANDATORY_EVENT_FUNCTIONS compile time option
   *      -# Add watchdog support to the library and apps/bootloaders
+  *      -# Re-run USBIF test suite on all classes to formally verify operation
   *  - Documentation/Support
   *      -# Add detailed overviews of how each demo works
   *      -# Add board overviews
   *  - Documentation/Support
   *      -# Add detailed overviews of how each demo works
   *      -# Add board overviews
index 2a5ff2a..ce8e8cf 100644 (file)
  *  - Retrode, a USB Games Console Cartridge Reader: http://www.retrode.org
  *  - SmartCardDetective, a Smart Card analysis tool: http://www.smartcarddetective.com/
  *  - USBTINY-MKII, an AVRISP-MKII Clone AVR Programmer: http://tom-itx.dyndns.org:81/~webpage/boards/USBTiny_Mkii/USBTiny_Mkii_index.php
  *  - Retrode, a USB Games Console Cartridge Reader: http://www.retrode.org
  *  - SmartCardDetective, a Smart Card analysis tool: http://www.smartcarddetective.com/
  *  - USBTINY-MKII, an AVRISP-MKII Clone AVR Programmer: http://tom-itx.dyndns.org:81/~webpage/boards/USBTiny_Mkii/USBTiny_Mkii_index.php
+ *  - VMeter, a USB MIDI touch strip controller: http://www.vmeter.net/
  *  - XMEGA Development Board, using LUFA as an On-Board Programmer: http://xmega.mattair.net/
  *  - Zeptoprog, a multifunction AVR programmer: http://www.mattairtech.com/index.php/featured/zeptoprog.html
  *
  *  - XMEGA Development Board, using LUFA as an On-Board Programmer: http://xmega.mattair.net/
  *  - Zeptoprog, a multifunction AVR programmer: http://www.mattairtech.com/index.php/featured/zeptoprog.html
  *