\r
/** \ingroup Group_EndpointPrimitiveRW\r
* \defgroup Group_EndpointPrimitiveRW_UC3B Read/Write of Primitive Data Types (UC3B)\r
- * \brief Endpoint primative read/write definitions for the Atmel UC3B architecture.\r
+ * \brief Endpoint primative read/write definitions for the Atmel AVR32 UC3B architecture.\r
*\r
* Functions, macros, variables, enums and types related to data reading and writing of primitive data types\r
* from and to endpoints.\r
\r
/** \ingroup Group_EndpointPacketManagement\r
* \defgroup Group_EndpointPacketManagement_UC3B Endpoint Packet Management (UC3B)\r
- * \brief Endpoint packet management definitions for the Atmel UC3B architecture.\r
+ * \brief Endpoint packet management definitions for the Atmel AVR32 UC3B architecture.\r
*\r
* Functions, macros, variables, enums and types related to packet management of endpoints.\r
*/\r
\r
/** \ingroup Group_EndpointManagement\r
* \defgroup Group_EndpointManagement_UC3B Endpoint Management (UC3B)\r
- * \brief Endpoint management definitions for the Atmel UC3B architecture.\r
+ * \brief Endpoint management definitions for the Atmel AVR32 UC3B architecture.\r
*\r
* Functions, macros and enums related to endpoint management when in USB Device mode. This\r
* module contains the endpoint management macros, as well as endpoint interrupt and data\r
/* Enums: */\r
/** Enum for the possible error return codes of the \ref Endpoint_WaitUntilReady() function.\r
*\r
- * \ingroup Group_EndpointRW_AVR8\r
+ * \ingroup Group_EndpointRW_UC3B\r
*/\r
enum Endpoint_WaitUntilReady_ErrorCodes_t\r
{\r
* \note The return width of this function may differ, depending on the maximum endpoint bank size\r
* of the selected AVR model.\r
*\r
- * \ingroup Group_EndpointRW_AVR8\r
+ * \ingroup Group_EndpointRW_UC3B\r
*\r
* \return Total number of bytes in the currently selected Endpoint's FIFO buffer.\r
*/\r
* transmission via the \ref Endpoint_ClearIN() command, or are awaiting acknowledgement via the\r
* \ref Endpoint_ClearOUT() command.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*\r
* \return Total number of busy banks in the selected endpoint.\r
*/\r
* will terminate all queued transactions, resetting the endpoint banks ready for a new\r
* packet.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*/\r
static inline void Endpoint_AbortPendingIN(void)\r
{\r
* is an OUT direction and no packet (or an empty packet) has been received, or if the endpoint is an IN\r
* direction and the endpoint bank is full.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*\r
* \return Boolean \c true if the currently selected endpoint may be read from or written to, depending\r
* on its direction.\r
\r
/** Determines if the selected IN endpoint is ready for a new packet to be sent to the host.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*\r
* \return Boolean \c true if the current endpoint is ready for an IN packet, \c false otherwise.\r
*/\r
\r
/** Determines if the selected OUT endpoint has received new packet from the host.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*\r
* \return Boolean \c true if current endpoint is has received an OUT packet, \c false otherwise.\r
*/\r
\r
/** Determines if the current CONTROL type endpoint has received a SETUP packet.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*\r
* \return Boolean \c true if the selected endpoint has received a SETUP packet, \c false otherwise.\r
*/\r
/** Clears a received SETUP packet on the currently selected CONTROL type endpoint, freeing up the\r
* endpoint for the next packet.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*\r
* \note This is not applicable for non CONTROL type endpoints.\r
*/\r
/** Sends an IN packet to the host on the currently selected endpoint, freeing up the endpoint for the\r
* next packet and switching to the alternative endpoint bank if double banked.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*/\r
static inline void Endpoint_ClearIN(void) ATTR_ALWAYS_INLINE;\r
static inline void Endpoint_ClearIN(void)\r
/** Acknowledges an OUT packet to the host on the currently selected endpoint, freeing up the endpoint\r
* for the next packet and switching to the alternative endpoint bank if double banked.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*/\r
static inline void Endpoint_ClearOUT(void) ATTR_ALWAYS_INLINE;\r
static inline void Endpoint_ClearOUT(void)\r
* is called, or the host issues a CLEAR FEATURE request to the device for the currently selected\r
* endpoint.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*/\r
static inline void Endpoint_StallTransaction(void) ATTR_ALWAYS_INLINE;\r
static inline void Endpoint_StallTransaction(void)\r
\r
/** Clears the STALL condition on the currently selected endpoint.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*/\r
static inline void Endpoint_ClearStall(void) ATTR_ALWAYS_INLINE;\r
static inline void Endpoint_ClearStall(void)\r
\r
/** Determines if the currently selected endpoint is stalled, false otherwise.\r
*\r
- * \ingroup Group_EndpointPacketManagement_AVR8\r
+ * \ingroup Group_EndpointPacketManagement_UC3B\r
*\r
* \return Boolean \c true if the currently selected endpoint is stalled, \c false otherwise.\r
*/\r
\r
/** Reads one byte from the currently selected endpoint's bank, for OUT direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_AVR32\r
*\r
* \return Next byte in the currently selected endpoint's FIFO buffer.\r
*/\r
\r
/** Writes one byte from the currently selected endpoint's bank, for IN direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_AVR32\r
*\r
* \param[in] Byte Next byte to write into the the currently selected endpoint's FIFO buffer.\r
*/\r
\r
/** Discards one byte from the currently selected endpoint's bank, for OUT direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*/\r
static inline void Endpoint_Discard_Byte(void) ATTR_ALWAYS_INLINE;\r
static inline void Endpoint_Discard_Byte(void)\r
/** Reads two bytes from the currently selected endpoint's bank in little endian format, for OUT\r
* direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*\r
* \return Next word in the currently selected endpoint's FIFO buffer.\r
*/\r
/** Reads two bytes from the currently selected endpoint's bank in big endian format, for OUT\r
* direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*\r
* \return Next word in the currently selected endpoint's FIFO buffer.\r
*/\r
/** Writes two bytes to the currently selected endpoint's bank in little endian format, for IN\r
* direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*\r
* \param[in] Word Next word to write to the currently selected endpoint's FIFO buffer.\r
*/\r
/** Writes two bytes to the currently selected endpoint's bank in big endian format, for IN\r
* direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*\r
* \param[in] Word Next word to write to the currently selected endpoint's FIFO buffer.\r
*/\r
\r
/** Discards two bytes from the currently selected endpoint's bank, for OUT direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*/\r
static inline void Endpoint_Discard_Word(void) ATTR_ALWAYS_INLINE;\r
static inline void Endpoint_Discard_Word(void)\r
/** Reads four bytes from the currently selected endpoint's bank in little endian format, for OUT\r
* direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*\r
* \return Next double word in the currently selected endpoint's FIFO buffer.\r
*/\r
/** Reads four bytes from the currently selected endpoint's bank in big endian format, for OUT\r
* direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*\r
* \return Next double word in the currently selected endpoint's FIFO buffer.\r
*/\r
/** Writes four bytes to the currently selected endpoint's bank in little endian format, for IN\r
* direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*\r
* \param[in] DWord Next double word to write to the currently selected endpoint's FIFO buffer.\r
*/\r
/** Writes four bytes to the currently selected endpoint's bank in big endian format, for IN\r
* direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*\r
* \param[in] DWord Next double word to write to the currently selected endpoint's FIFO buffer.\r
*/\r
\r
/** Discards four bytes from the currently selected endpoint's bank, for OUT direction endpoints.\r
*\r
- * \ingroup Group_EndpointPrimitiveRW_AVR8\r
+ * \ingroup Group_EndpointPrimitiveRW_UC3B\r
*/\r
static inline void Endpoint_Discard_DWord(void) ATTR_ALWAYS_INLINE;\r
static inline void Endpoint_Discard_DWord(void)\r
*\r
* \note This routine should not be called on CONTROL type endpoints.\r
*\r
- * \ingroup Group_EndpointRW_AVR8\r
+ * \ingroup Group_EndpointRW_UC3B\r
*\r
* \return A value from the \ref Endpoint_WaitUntilReady_ErrorCodes_t enum.\r
*/\r
/* Enums: */\r
/** Enum for the possible error return codes of the \ref Pipe_WaitUntilReady() function.\r
*\r
- * \ingroup Group_PipeRW_AVR8\r
+ * \ingroup Group_PipeRW_UC3B\r
*/\r
enum Pipe_WaitUntilReady_ErrorCodes_t\r
{\r
* \note The return width of this function may differ, depending on the maximum pipe bank size\r
* of the selected AVR model.\r
*\r
- * \ingroup Group_PipeRW_AVR8\r
+ * \ingroup Group_PipeRW_UC3B\r
*\r
* \return Total number of bytes in the currently selected pipe's FIFO buffer.\r
*/\r
* transmission via the \ref Pipe_ClearOUT() command, or are awaiting acknowledgement via the\r
* \ref Pipe_ClearIN() command.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*\r
* \return Total number of busy banks in the selected pipe.\r
*/\r
*\r
* \note This function is not valid on CONTROL type pipes.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*\r
* \return Boolean \c true if the currently selected pipe may be read from or written to, depending\r
* on its direction.\r
\r
/** Determines if a packet has been received on the currently selected IN pipe from the attached device.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*\r
* \return Boolean \c true if the current pipe has received an IN packet, \c false otherwise.\r
*/\r
\r
/** Determines if the currently selected OUT pipe is ready to send an OUT packet to the attached device.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*\r
* \return Boolean \c true if the current pipe is ready for an OUT packet, \c false otherwise.\r
*/\r
/** Determines if no SETUP request is currently being sent to the attached device on the selected\r
* CONTROL type pipe.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*\r
* \return Boolean \c true if the current pipe is ready for a SETUP packet, \c false otherwise.\r
*/\r
\r
/** Sends the currently selected CONTROL type pipe's contents to the device as a SETUP packet.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*/\r
static inline void Pipe_ClearSETUP(void) ATTR_ALWAYS_INLINE;\r
static inline void Pipe_ClearSETUP(void)\r
/** Acknowledges the reception of a setup IN request from the attached device on the currently selected\r
* pipe, freeing the bank ready for the next packet.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*/\r
static inline void Pipe_ClearIN(void) ATTR_ALWAYS_INLINE;\r
static inline void Pipe_ClearIN(void)\r
/** Sends the currently selected pipe's contents to the device as an OUT packet on the selected pipe, freeing\r
* the bank ready for the next packet.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*/\r
static inline void Pipe_ClearOUT(void) ATTR_ALWAYS_INLINE;\r
static inline void Pipe_ClearOUT(void)\r
* received, it must be cleared using \ref Pipe_ClearNAKReceived() before the previous (or any other) packet\r
* can be re-sent.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*\r
* \return Boolean \c true if an NAK has been received on the current pipe, \c false otherwise.\r
*/\r
\r
/** Clears the NAK condition on the currently selected pipe.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*\r
* \see \ref Pipe_IsNAKReceived() for more details.\r
*/\r
\r
/** Determines if the currently selected pipe has had the STALL condition set by the attached device.\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*\r
* \return Boolean \c true if the current pipe has been stalled by the attached device, \c false otherwise.\r
*/\r
/** Clears the STALL condition detection flag on the currently selected pipe, but does not clear the\r
* STALL condition itself (this must be done via a ClearFeature control request to the device).\r
*\r
- * \ingroup Group_PipePacketManagement_AVR8\r
+ * \ingroup Group_PipePacketManagement_UC3B\r
*/\r
static inline void Pipe_ClearStall(void) ATTR_ALWAYS_INLINE;\r
static inline void Pipe_ClearStall(void)\r
\r
/** Reads one byte from the currently selected pipe's bank, for OUT direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \return Next byte in the currently selected pipe's FIFO buffer.\r
*/\r
\r
/** Writes one byte from the currently selected pipe's bank, for IN direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \param[in] Byte Next byte to write into the the currently selected pipe's FIFO buffer.\r
*/\r
\r
/** Discards one byte from the currently selected pipe's bank, for OUT direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*/\r
static inline void Pipe_Discard_Byte(void) ATTR_ALWAYS_INLINE;\r
static inline void Pipe_Discard_Byte(void)\r
/** Reads two bytes from the currently selected pipe's bank in little endian format, for OUT\r
* direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \return Next word in the currently selected pipe's FIFO buffer.\r
*/\r
/** Reads two bytes from the currently selected pipe's bank in big endian format, for OUT\r
* direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \return Next word in the currently selected pipe's FIFO buffer.\r
*/\r
/** Writes two bytes to the currently selected pipe's bank in little endian format, for IN\r
* direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \param[in] Word Next word to write to the currently selected pipe's FIFO buffer.\r
*/\r
/** Writes two bytes to the currently selected pipe's bank in big endian format, for IN\r
* direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \param[in] Word Next word to write to the currently selected pipe's FIFO buffer.\r
*/\r
\r
/** Discards two bytes from the currently selected pipe's bank, for OUT direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*/\r
static inline void Pipe_Discard_Word(void) ATTR_ALWAYS_INLINE;\r
static inline void Pipe_Discard_Word(void)\r
/** Reads four bytes from the currently selected pipe's bank in little endian format, for OUT\r
* direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \return Next double word in the currently selected pipe's FIFO buffer.\r
*/\r
/** Reads four bytes from the currently selected pipe's bank in big endian format, for OUT\r
* direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \return Next double word in the currently selected pipe's FIFO buffer.\r
*/\r
/** Writes four bytes to the currently selected pipe's bank in little endian format, for IN\r
* direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \param[in] DWord Next double word to write to the currently selected pipe's FIFO buffer.\r
*/\r
/** Writes four bytes to the currently selected pipe's bank in big endian format, for IN\r
* direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*\r
* \param[in] DWord Next double word to write to the currently selected pipe's FIFO buffer.\r
*/\r
\r
/** Discards four bytes from the currently selected pipe's bank, for OUT direction pipes.\r
*\r
- * \ingroup Group_PipePrimitiveRW_AVR8\r
+ * \ingroup Group_PipePrimitiveRW_UC3B\r
*/\r
static inline void Pipe_Discard_DWord(void) ATTR_ALWAYS_INLINE;\r
static inline void Pipe_Discard_DWord(void)\r
/** Spin-loops until the currently selected non-control pipe is ready for the next packed of data to be read\r
* or written to it, aborting in the case of an error condition (such as a timeout or device disconnect).\r
*\r
- * \ingroup Group_PipeRW_AVR8\r
+ * \ingroup Group_PipeRW_UC3B\r
*\r
* \return A value from the \ref Pipe_WaitUntilReady_ErrorCodes_t enum.\r
*/\r