LUFA Library  140928
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Endpoint_AVR8.h File Reference

USB Endpoint definitions for the AVR8 microcontrollers. More...

Macros

#define ENDPOINT_CONTROLEP_DEFAULT_SIZE   8
 
#define ENDPOINT_TOTAL_ENDPOINTS   7
 

Enumerations

enum  Endpoint_WaitUntilReady_ErrorCodes_t {
  ENDPOINT_READYWAIT_NoError = 0,
  ENDPOINT_READYWAIT_EndpointStalled = 1,
  ENDPOINT_READYWAIT_DeviceDisconnected = 2,
  ENDPOINT_READYWAIT_BusSuspended = 3,
  ENDPOINT_READYWAIT_Timeout = 4,
  ENDPOINT_READYWAIT_NoError = 0,
  ENDPOINT_READYWAIT_EndpointStalled = 1,
  ENDPOINT_READYWAIT_DeviceDisconnected = 2,
  ENDPOINT_READYWAIT_BusSuspended = 3,
  ENDPOINT_READYWAIT_Timeout = 4,
  ENDPOINT_READYWAIT_NoError = 0,
  ENDPOINT_READYWAIT_EndpointStalled = 1,
  ENDPOINT_READYWAIT_DeviceDisconnected = 2,
  ENDPOINT_READYWAIT_BusSuspended = 3,
  ENDPOINT_READYWAIT_Timeout = 4
}
 

Functions

static void Endpoint_AbortPendingIN (void)
 
static uint16_t Endpoint_BytesInEndpoint (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static void Endpoint_ClearIN (void) ATTR_ALWAYS_INLINE
 
static void Endpoint_ClearOUT (void) ATTR_ALWAYS_INLINE
 
static void Endpoint_ClearSETUP (void) ATTR_ALWAYS_INLINE
 
static void Endpoint_ClearStall (void) ATTR_ALWAYS_INLINE
 
void Endpoint_ClearStatusStage (void)
 
static bool Endpoint_ConfigureEndpoint (const uint8_t Address, const uint8_t Type, const uint16_t Size, const uint8_t Banks) ATTR_ALWAYS_INLINE
 
bool Endpoint_ConfigureEndpointTable (const USB_Endpoint_Table_t *const Table, const uint8_t Entries)
 
static void Endpoint_DisableEndpoint (void) ATTR_ALWAYS_INLINE
 
static void Endpoint_Discard_16 (void) ATTR_ALWAYS_INLINE
 
static void Endpoint_Discard_32 (void) ATTR_ALWAYS_INLINE
 
static void Endpoint_Discard_8 (void) ATTR_ALWAYS_INLINE
 
static void Endpoint_EnableEndpoint (void) ATTR_ALWAYS_INLINE
 
static uint8_t Endpoint_GetBusyBanks (void) ATTR_ALWAYS_INLINE ATTR_WARN_UNUSED_RESULT
 
static uint8_t Endpoint_GetCurrentEndpoint (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static uint8_t Endpoint_GetEndpointDirection (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static uint8_t Endpoint_GetEndpointInterrupts (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static bool Endpoint_HasEndpointInterrupted (const uint8_t Address) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static bool Endpoint_IsConfigured (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static bool Endpoint_IsEnabled (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static bool Endpoint_IsINReady (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static bool Endpoint_IsOUTReceived (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static bool Endpoint_IsReadWriteAllowed (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static bool Endpoint_IsSETUPReceived (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static bool Endpoint_IsStalled (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static uint16_t Endpoint_Read_16_BE (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static uint16_t Endpoint_Read_16_LE (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static uint32_t Endpoint_Read_32_BE (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static uint32_t Endpoint_Read_32_LE (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static uint8_t Endpoint_Read_8 (void) ATTR_WARN_UNUSED_RESULT ATTR_ALWAYS_INLINE
 
static void Endpoint_ResetDataToggle (void) ATTR_ALWAYS_INLINE
 
static void Endpoint_ResetEndpoint (const uint8_t Address) ATTR_ALWAYS_INLINE
 
static void Endpoint_SelectEndpoint (const uint8_t Address) ATTR_ALWAYS_INLINE
 
static void Endpoint_SetEndpointDirection (const uint8_t DirectionMask) ATTR_ALWAYS_INLINE
 
static void Endpoint_StallTransaction (void) ATTR_ALWAYS_INLINE
 
uint8_t Endpoint_WaitUntilReady (void)
 
static void Endpoint_Write_16_BE (const uint16_t Data) ATTR_ALWAYS_INLINE
 
static void Endpoint_Write_16_LE (const uint16_t Data) ATTR_ALWAYS_INLINE
 
static void Endpoint_Write_32_BE (const uint32_t Data) ATTR_ALWAYS_INLINE
 
static void Endpoint_Write_32_LE (const uint32_t Data) ATTR_ALWAYS_INLINE
 
static void Endpoint_Write_8 (const uint8_t Data) ATTR_ALWAYS_INLINE
 

Variables

uint8_t USB_Device_ControlEndpointSize
 

Detailed Description

Functions, macros and enums related to endpoint management when in USB Device mode. This module contains the endpoint management macros, as well as endpoint 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.