Defines |
#define | PIPE_CONTROLPIPE_DEFAULT_SIZE 64 |
#define | PIPE_TOTAL_PIPES 8 |
#define | PIPE_MAX_SIZE 256 |
|
#define | PIPE_ERRORFLAG_OVERFLOW (AVR32_USBB_UPSTA0_OVERFI_MASK << 8) |
#define | PIPE_ERRORFLAG_CRC16 AVR32_USBB_UPERR0_CRC16_MASK |
#define | PIPE_ERRORFLAG_TIMEOUT AVR32_USBB_UPERR0_TIMEOUT_MASK |
#define | PIPE_ERRORFLAG_PID AVR32_USBB_UPERR0_PID_MASK |
#define | PIPE_ERRORFLAG_DATAPID AVR32_USBB_UPERR0_DATAPID_MASK |
#define | PIPE_ERRORFLAG_DATATGL AVR32_USBB_UPERR0_DATATGL_MASK |
|
#define | PIPE_TOKEN_SETUP AVR32_USBB_UPCFG0_PTOKEN_SETUP |
#define | PIPE_TOKEN_IN AVR32_USBB_UPCFG0_PTOKEN_IN |
#define | PIPE_TOKEN_OUT AVR32_USBB_UPCFG0_PTOKEN_OUT |
|
#define | PIPE_BANK_SINGLE AVR32_USBB_UPCFG0_PBK_SINGLE |
#define | PIPE_BANK_DOUBLE AVR32_USBB_UPCFG0_PBK_DOUBLE |
#define | PIPE_BANK_TRIPLE AVR32_USBB_UPCFG0_PBK_TRIPLE |
Enumerations |
enum | Pipe_WaitUntilReady_ErrorCodes_t {
PIPE_READYWAIT_NoError = 0,
PIPE_READYWAIT_PipeStalled = 1,
PIPE_READYWAIT_DeviceDisconnected = 2,
PIPE_READYWAIT_Timeout = 3,
PIPE_READYWAIT_NoError = 0,
PIPE_READYWAIT_PipeStalled = 1,
PIPE_READYWAIT_DeviceDisconnected = 2,
PIPE_READYWAIT_Timeout = 3
} |
Functions |
static uint16_t | Pipe_BytesInPipe (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static uint8_t | Pipe_GetCurrentPipe (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_SelectPipe (const uint8_t PipeNumber) ATTR_ALWAYS_INLINE |
static void | Pipe_ResetPipe (const uint8_t PipeNumber) ATTR_ALWAYS_INLINE |
static void | Pipe_EnablePipe (void) ATTR_ALWAYS_INLINE |
static void | Pipe_DisablePipe (void) ATTR_ALWAYS_INLINE |
static bool | Pipe_IsEnabled (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static uint8_t | Pipe_GetPipeToken (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_SetPipeToken (const uint8_t Token) ATTR_ALWAYS_INLINE |
static void | Pipe_SetInfiniteINRequests (void) ATTR_ALWAYS_INLINE |
static void | Pipe_SetFiniteINRequests (const uint8_t TotalINRequests) ATTR_ALWAYS_INLINE |
static bool | Pipe_IsConfigured (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static uint8_t | Pipe_GetBoundEndpointAddress (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_SetInterruptPeriod (const uint8_t Milliseconds) ATTR_ALWAYS_INLINE |
static uint8_t | Pipe_GetPipeInterrupts (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static bool | Pipe_HasPipeInterrupted (const uint8_t PipeNumber) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_Unfreeze (void) ATTR_ALWAYS_INLINE |
static void | Pipe_Freeze (void) ATTR_ALWAYS_INLINE |
static bool | Pipe_IsFrozen (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_ClearError (void) ATTR_ALWAYS_INLINE |
static bool | Pipe_IsError (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static uint8_t | Pipe_GetErrorFlags (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static uint8_t | Pipe_GetBusyBanks (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static bool | Pipe_IsReadWriteAllowed (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static bool | Pipe_IsINReceived (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static bool | Pipe_IsOUTReady (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static bool | Pipe_IsSETUPSent (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_ClearSETUP (void) ATTR_ALWAYS_INLINE |
static void | Pipe_ClearIN (void) ATTR_ALWAYS_INLINE |
static void | Pipe_ClearOUT (void) ATTR_ALWAYS_INLINE |
static bool | Pipe_IsNAKReceived (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_ClearNAKReceived (void) ATTR_ALWAYS_INLINE |
static bool | Pipe_IsStalled (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_ClearStall (void) ATTR_ALWAYS_INLINE |
static uint8_t | Pipe_Read_8 (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_Write_8 (const uint8_t Data) ATTR_ALWAYS_INLINE |
static void | Pipe_Discard_8 (void) ATTR_ALWAYS_INLINE |
static uint16_t | Pipe_Read_16_LE (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static uint16_t | Pipe_Read_16_BE (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_Write_16_LE (const uint16_t Data) ATTR_ALWAYS_INLINE |
static void | Pipe_Write_16_BE (const uint16_t Data) ATTR_ALWAYS_INLINE |
static void | Pipe_Discard_16 (void) ATTR_ALWAYS_INLINE |
static uint32_t | Pipe_Read_32_LE (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static uint32_t | Pipe_Read_32_BE (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE |
static void | Pipe_Write_32_LE (const uint32_t Data) ATTR_ALWAYS_INLINE |
static void | Pipe_Write_32_BE (const uint32_t Data) ATTR_ALWAYS_INLINE |
static void | Pipe_Discard_32 (void) ATTR_ALWAYS_INLINE |
bool | Pipe_ConfigurePipe (const uint8_t Number, const uint8_t Type, const uint8_t Token, const uint8_t EndpointNumber, const uint16_t Size, const uint8_t Banks) |
uint8_t | Pipe_WaitUntilReady (void) |
bool | Pipe_IsEndpointBound (const uint8_t EndpointAddress) ATTR_WARN_UNUSED_RESULT |
Variables |
uint8_t | USB_Host_ControlPipeSize |
This module contains functions, macros and enums related to pipe management when in USB Host mode. This module contains the pipe management macros, as well as pipe interrupt and data send/receive functions for various data types.
- Note:
- This file should not be included directly. It is automatically included as needed by the USB driver dispatch header located in LUFA/Drivers/USB/USB.h.