#include <avr/io.h>
#include "../../../Common/Common.h"
#include "../HighLevel/USBMode.h"
#include "../LowLevel/HostChapter9.h"
#include "../HighLevel/StdDescriptors.h"
Defines | |
#define | EP_TYPE_MASK 0x03 |
#define | DESCRIPTOR_PCAST(DescriptorPtr, Type) ((Type*)DescriptorPtr) |
#define | DESCRIPTOR_CAST(DescriptorPtr, Type) (*DESCRIPTOR_PCAST(DescriptorPtr, Type)) |
#define | DESCRIPTOR_TYPE(DescriptorPtr) DESCRIPTOR_CAST(DescriptorPtr, USB_Descriptor_Header_t).Type |
#define | DESCRIPTOR_SIZE(DescriptorPtr) DESCRIPTOR_CAST(DescriptorPtr, USB_Descriptor_Header_t).Size |
Typedefs | |
typedef uint8_t(*const | ConfigComparatorPtr_t )(void *const) |
Enumerations | |
enum | DSearch_Return_ErrorCodes_t { DESCRIPTOR_SEARCH_Found = 0, DESCRIPTOR_SEARCH_Fail = 1, DESCRIPTOR_SEARCH_NotFound = 2 } |
enum | DSearch_Comp_Return_ErrorCodes_t { DESCRIPTOR_SEARCH_COMP_Found = 0, DESCRIPTOR_SEARCH_COMP_Fail = 1, DESCRIPTOR_SEARCH_COMP_EndOfDescriptor = 2 } |
Functions | |
uint8_t | USB_GetNextDescriptorComp (uint16_t *BytesRem, uint8_t **CurrConfigLoc, ConfigComparatorPtr_t ComparatorRoutine) |
uint8_t | USB_GetDeviceConfigDescriptor (uint16_t *const ConfigSizePtr, void *BufferPtr) ATTR_NON_NULL_PTR_ARG(1) |
void | USB_GetNextDescriptorOfType (uint16_t *const BytesRem, uint8_t **const CurrConfigLoc, const uint8_t Type) ATTR_NON_NULL_PTR_ARG(1 |
void void | USB_GetNextDescriptorOfTypeBefore (uint16_t *const BytesRem, uint8_t **const CurrConfigLoc, const uint8_t Type, const uint8_t BeforeType) ATTR_NON_NULL_PTR_ARG(1 |
void void void | USB_GetNextDescriptorOfTypeAfter (uint16_t *const BytesRem, uint8_t **const CurrConfigLoc, const uint8_t Type, const uint8_t AfterType) ATTR_NON_NULL_PTR_ARG(1 |
void void void static void | USB_GetNextDescriptor (uint16_t *const BytesRem, uint8_t **const CurrConfigLoc) ATTR_NON_NULL_PTR_ARG(1 |