diff --git a/LUFA/DoxygenPages/ChangeLog.txt b/LUFA/DoxygenPages/ChangeLog.txt index 28f710df42..ea0bc60560 100644 --- a/LUFA/DoxygenPages/ChangeLog.txt +++ b/LUFA/DoxygenPages/ChangeLog.txt @@ -62,6 +62,7 @@ * - Fixed broken compilation of LUFA under C++ compilers when the Serial peripheral module header file is included in a C++ source file * - Fixed missing semicolon in the UC3 architecture host pipe functions * - Fixed failed compilation for the XMEGA architecture if USB_DEVICE_ONLY us not specified + * - Fixed UC3 architecture ignoring the pipe size when Pipe_ConfigurePipe() is called * - Library Applications: * - Added reliability patches to the AVRISP-MKII Clone project's PDI/TPI protocols (thanks to Justin Mattair) * - Fixed AVRISP-MKII Clone compile warning on AVR8 U4 targets even when NO_VTARGET_DETECT is enabled diff --git a/LUFA/Drivers/Peripheral/AVR8/TWI_AVR8.h b/LUFA/Drivers/Peripheral/AVR8/TWI_AVR8.h index 56697ff99b..17c1e5c27c 100644 --- a/LUFA/Drivers/Peripheral/AVR8/TWI_AVR8.h +++ b/LUFA/Drivers/Peripheral/AVR8/TWI_AVR8.h @@ -254,8 +254,6 @@ */ bool TWI_ReceiveByte(uint8_t* const Byte, const bool LastByte) ATTR_NON_NULL_PTR_ARG(1); - bool TWI_ReceiveByte(uint8_t* const Byte, - const bool LastByte); /** High level function to perform a complete packet transfer over the TWI bus to the specified * device. diff --git a/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.c b/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.c index 770f28545e..dbd03c7cd1 100644 --- a/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.c +++ b/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.c @@ -58,6 +58,7 @@ bool Pipe_ConfigurePipe(const uint8_t Number, ((uint32_t)Type << AVR32_USBB_PTYPE_OFFSET) | ((uint32_t)Token << AVR32_USBB_PTOKEN_OFFSET) | ((uint32_t)Banks << AVR32_USBB_PBK_OFFSET) | + Pipe_BytesToEPSizeMask(Size) | ((EndpointNumber & PIPE_EPNUM_MASK) << AVR32_USBB_PEPNUM_OFFSET)); Pipe_SetInfiniteINRequests(); @@ -76,6 +77,7 @@ bool Pipe_ConfigurePipe(const uint8_t Number, ((uint32_t)Type << AVR32_USBB_PTYPE_OFFSET) | ((uint32_t)Token << AVR32_USBB_PTOKEN_OFFSET) | ((uint32_t)Banks << AVR32_USBB_PBK_OFFSET) | + Pipe_BytesToEPSizeMask(Size) | ((EndpointNumber & PIPE_EPNUM_MASK) << AVR32_USBB_PEPNUM_OFFSET)); } else diff --git a/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.h b/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.h index 7b9e7993bb..1433d8ca23 100644 --- a/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.h +++ b/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.h @@ -389,7 +389,7 @@ static inline bool Pipe_HasPipeInterrupted(const uint8_t PipeNumber) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE; static inline bool Pipe_HasPipeInterrupted(const uint8_t PipeNumber) { - return ((AVR32_USBB.uhint & (AVR32_USBB_P0INTES_MASK << USB_Pipe_SelectedPipe)) ? true : false); + return ((AVR32_USBB.uhint & (AVR32_USBB_P0INTES_MASK << PipeNumber)) ? true : false); } /** Unfreezes the selected pipe, allowing it to communicate with an attached device. */ diff --git a/LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.h b/LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.h index 37059c13d2..c4dfab392f 100644 --- a/LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.h +++ b/LUFA/Drivers/USB/Core/UC3/USBInterrupt_UC3.h @@ -350,15 +350,13 @@ #endif /* Public Interface - May be used in end-application: */ - /* ISR Prototypes: */ + /* Function Prototypes: */ #if defined(__DOXYGEN__) /** Interrupt service routine handler for the USB controller ISR group. This interrupt routine must be * linked to the entire USB controller ISR vector group inside the AVR32's interrupt controller peripheral, * using the user application's preferred USB controller driver. */ void USB_GEN_vect(void); - #else - ISR(USB_GEN_vect); #endif /* Disable C linkage for C++ Compilers: */ diff --git a/LUFA/Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h b/LUFA/Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h index aaac091a36..8cea092d0e 100644 --- a/LUFA/Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h +++ b/LUFA/Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h @@ -429,6 +429,7 @@ static inline bool Endpoint_HasEndpointInterrupted(const uint8_t EndpointNumber) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE; static inline bool Endpoint_HasEndpointInterrupted(const uint8_t EndpointNumber) { + (void)EndpointNumber; return 0; // TODO } diff --git a/LUFA/Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.h b/LUFA/Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.h index e40a1f54c8..6a07626a59 100644 --- a/LUFA/Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.h +++ b/LUFA/Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.h @@ -73,10 +73,10 @@ switch (Interrupt) { case USB_INT_BUSEVENTI: - USB.INTCTRLA |= USB_BUSEVIE_bm; + USB.INTCTRLA |= USB_BUSEVIE_bm; return; case USB_INT_SOFI: - USB.INTCTRLA |= USB_SOFIE_bm; + USB.INTCTRLA |= USB_SOFIE_bm; return; } } diff --git a/LUFA/Platform/XMEGA/ClockManagement.h b/LUFA/Platform/XMEGA/ClockManagement.h index 415c9871f9..20fb6464c6 100644 --- a/LUFA/Platform/XMEGA/ClockManagement.h +++ b/LUFA/Platform/XMEGA/ClockManagement.h @@ -323,14 +323,11 @@ * and ready for use before this function is called. * * \param[in] Source Clock source for the CPU core, a value from \ref XMEGA_System_ClockSource_t. - * \param[in] SourceFreq Frequency of the CPU core's clock source, in Hz. * * \return Boolean \c true if the CPU core clock was sucessfully altered, \c false if invalid parameters specified. */ - static inline bool XMEGACLK_SetCPUClockSource(const uint8_t Source, - const uint32_t SourceFreq) ATTR_ALWAYS_INLINE; - static inline bool XMEGACLK_SetCPUClockSource(const uint8_t Source, - const uint32_t SourceFreq) + static inline bool XMEGACLK_SetCPUClockSource(const uint8_t Source) ATTR_ALWAYS_INLINE; + static inline bool XMEGACLK_SetCPUClockSource(const uint8_t Source) { uint8_t ClockSourceMask = 0;