Data Structures | Macros | Typedefs | Enumerations | Functions
usb_musb_dcd.h File Reference

Device Abstraction layer header for USB MUSB device contoller driver. More...

#include "hw_usb.h"
#include "usb_dcd_interface.h"

Data Structures

struct  usbMusbDcdDevice
 Musb device object used by the MUSB driver. More...
 

Macros

#define USB_MAX_INTERFACES_PER_DEVICE   8
 

Typedefs

typedef enum usbMusbDcdEp0State tEP0State
 This enum contains the possible values of state of endpoint 0.
 
typedef struct usbMusbDcdDevice usbMusbDcdDevice_t
 Musb device object used by the MUSB driver.
 

Enumerations

enum  usbMusbDcdEp0State
 This enum contains the possible values of state of endpoint 0.
 

Functions

uint32_t USBMusbDcdInit (usbDcd_t *pDcdObject)
 USB MUSB device controller driver core init API. More...
 
uint32_t USBMusbDcdIntrHandler (usbMusbDcdDevice_t *MUSB)
 USB MUSB device interrupt handler. This will get all the device and endpoint events for all the endpoints. More...
 
uint32_t USBMusbDcdConfigDevChara (usbDcd_t *pDcdObject, usbDevChara_t *pDevCharacteristic)
 This API sets the device characteristics. More...
 
uint32_t USBMusbDcdEp0Req (usbDcd_t *pDcdObject, usbEndpt0Request_t req)
 Endpoint 0 request for control endpoint. More...
 
uint32_t USBMusbDcdEpReq (usbDcd_t *pDcdObject, usbEndptRequest_t req)
 Endpoint request for control bulk and isoch transfers for all endpoints other than endpoint 0. More...
 
void usbMusbDcdEnableWrapperIntr (uint32_t baseAddr)
 Enable all the wrapper interrupts. More...
 

Detailed Description

Device Abstraction layer header for USB MUSB device contoller driver.

Macro Definition Documentation

#define USB_MAX_INTERFACES_PER_DEVICE   8

The maximum number of independent interfaces that any single device implementation can support. Independent interfaces means interface descriptors with different bInterfaceNumber values - several interface descriptors offering different alternative settings but the same interface number count as a single interface.

Function Documentation

uint32_t USBMusbDcdConfigDevChara ( usbDcd_t pDcdObject,
usbDevChara_t pDevCharacteristic 
)

This API sets the device characteristics.

Parameters
pDcdObjectpointer to the USB device control object.
pDevCharacteristicpointer to the device characteristics structure.
void usbMusbDcdEnableWrapperIntr ( uint32_t  baseAddr)

Enable all the wrapper interrupts.

Parameters
baseAddrBaseaddress of USB wrapper register
uint32_t USBMusbDcdEp0Req ( usbDcd_t pDcdObject,
usbEndpt0Request_t  req 
)

Endpoint 0 request for control endpoint.

Parameters
pDcdObjectpointer to the USB device control object.
reqUSB request which needs to be handled for endpoint 0
uint32_t USBMusbDcdEpReq ( usbDcd_t pDcdObject,
usbEndptRequest_t  req 
)

Endpoint request for control bulk and isoch transfers for all endpoints other than endpoint 0.

Parameters
pDcdObjectpointer to the USB device control object.
reqUSB request which needs to be handled for endpoint other than endpoint 0.
uint32_t USBMusbDcdInit ( usbDcd_t pDcdObject)

USB MUSB device controller driver core init API.

Parameters
pDcdObjectpointer to the USB device control driver object
uint32_t USBMusbDcdIntrHandler ( usbMusbDcdDevice_t MUSB)

USB MUSB device interrupt handler. This will get all the device and endpoint events for all the endpoints.

Parameters
MUSBpointer to the MUSB object

Copyright 2016, Texas Instruments Incorporated