dwc_otg_hcd.c File Reference

This file implements HCD Core. More...

#include "dwc_otg_hcd.h"
#include "dwc_otg_regs.h"

Go to the source code of this file.

Functions

dwc_otg_hcd_tdwc_otg_hcd_alloc_hcd (void)
 This function allocates dwc_otg_hcd structure and returns pointer on it.
void dwc_otg_hcd_connect_timeout (void *ptr)
 Connection timeout function.
static void hcd_start_func (void *_vp)
 Work queue function for starting the HCD when A-Cable is connected.
static void del_xfer_timers (dwc_otg_hcd_t *hcd)
static void del_timers (dwc_otg_hcd_t *hcd)
static void kill_urbs_in_qh_list (dwc_otg_hcd_t *hcd, dwc_list_link_t *qh_list)
 Processes all the URBs in a single list of QHs.
static void kill_all_urbs (dwc_otg_hcd_t *hcd)
 Responds with an error status of ETIMEDOUT to all URBs in the non-periodic and periodic schedules.
static void dwc_otg_hcd_start_connect_timer (dwc_otg_hcd_t *hcd)
 Start the connection timer.
static int32_t dwc_otg_hcd_session_start_cb (void *p)
 HCD Callback function for disconnect of the HCD.
static int32_t dwc_otg_hcd_start_cb (void *p)
 HCD Callback function for starting the HCD when A-Cable is connected.
static int32_t dwc_otg_hcd_disconnect_cb (void *p)
 HCD Callback function for disconnect of the HCD.
static int32_t dwc_otg_hcd_stop_cb (void *p)
 HCD Callback function for stopping the HCD.
static int dwc_otg_hcd_rem_wakeup_cb (void *p)
 HCD Callback function for Remote Wakeup.
void dwc_otg_hcd_stop (dwc_otg_hcd_t *hcd)
 Halts the DWC_otg host mode operations in a clean manner.
int dwc_otg_hcd_urb_enqueue (dwc_otg_hcd_t *hcd, dwc_otg_hcd_urb_t *dwc_otg_urb, void **ep_handle)
 Queue URB.
int dwc_otg_hcd_urb_dequeue (dwc_otg_hcd_t *hcd, dwc_otg_hcd_urb_t *dwc_otg_urb)
 De-queue the specified URB.
int dwc_otg_hcd_endpoint_disable (dwc_otg_hcd_t *hcd, void *ep_handle, int retry)
 Frees resources in the DWC_otg controller related to a given endpoint.
static void reset_tasklet_func (void *data)
 Reset tasklet function.
static void qh_list_free (dwc_otg_hcd_t *hcd, dwc_list_link_t *qh_list)
static void dwc_otg_hcd_free (dwc_otg_hcd_t *dwc_otg_hcd)
 Frees secondary storage associated with the dwc_otg_hcd structure contained in the struct usb_hcd field.
int dwc_otg_hcd_init (dwc_otg_hcd_t *hcd, dwc_otg_core_if_t *core_if)
 This function should be called to initiate HCD Core.
void dwc_otg_hcd_remove (dwc_otg_hcd_t *hcd)
 Frees HCD.
static void dwc_otg_hcd_reinit (dwc_otg_hcd_t *hcd)
 Initializes dynamic portions of the DWC_otg HCD state.
static void assign_and_init_hc (dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh)
 Assigns transactions from a QTD to a free host channel and initializes the host channel to perform the transactions.
dwc_otg_transaction_type_e dwc_otg_hcd_select_transactions (dwc_otg_hcd_t *hcd)
 This function selects transactions from the HCD transfer schedule and assigns them to available host channels.
static int queue_transaction (dwc_otg_hcd_t *hcd, dwc_hc_t *hc, uint16_t fifo_dwords_avail)
 Attempts to queue a single transaction request for a host channel associated with either a periodic or non-periodic transfer.
static void process_periodic_channels (dwc_otg_hcd_t *hcd)
 Processes periodic channels for the next frame and queues transactions for these channels to the DWC_otg controller.
static void process_non_periodic_channels (dwc_otg_hcd_t *hcd)
 Processes active non-periodic channels and queues transactions for these channels to the DWC_otg controller.
void dwc_otg_hcd_queue_transactions (dwc_otg_hcd_t *hcd, dwc_otg_transaction_type_e tr_type)
 This function processes the currently active host channels and queues transactions for these channels to the DWC_otg controller.
int dwc_otg_hcd_hub_control (dwc_otg_hcd_t *dwc_otg_hcd, uint16_t typeReq, uint16_t wValue, uint16_t wIndex, uint8_t *buf, uint16_t wLength)
 Handles hub class-specific requests.
int dwc_otg_hcd_is_status_changed (dwc_otg_hcd_t *hcd, int port)
 Returns 1 if status of specified port is changed and 0 otherwise.
int dwc_otg_hcd_get_frame_number (dwc_otg_hcd_t *dwc_otg_hcd)
 Returns current frame number.
int dwc_otg_hcd_start (dwc_otg_hcd_t *hcd, struct dwc_otg_hcd_function_ops *fops)
 This function initializes the HCD Core.
void * dwc_otg_hcd_get_priv_data (dwc_otg_hcd_t *hcd)
 Returns private data set by dwc_otg_hcd_set_priv_data function.
void dwc_otg_hcd_set_priv_data (dwc_otg_hcd_t *hcd, void *priv_data)
 Set private data.
uint32_t dwc_otg_hcd_otg_port (dwc_otg_hcd_t *hcd)
 Returns otg port number.
uint32_t dwc_otg_hcd_is_b_host (dwc_otg_hcd_t *hcd)
 Returns 1 if currently core is acting as B host, and 0 otherwise.
dwc_otg_hcd_urb_tdwc_otg_hcd_urb_alloc (dwc_otg_hcd_t *hcd, int iso_desc_count, int atomic_alloc)
 Allocates memory for dwc_otg_hcd_urb structure.
void dwc_otg_hcd_urb_set_pipeinfo (dwc_otg_hcd_urb_t *dwc_otg_urb, uint8_t dev_addr, uint8_t ep_num, uint8_t ep_type, uint8_t ep_dir, uint16_t mps)
 Set pipe information in URB.
void dwc_otg_hcd_urb_set_params (dwc_otg_hcd_urb_t *dwc_otg_urb, void *urb_handle, void *buf, dwc_dma_t dma, uint32_t buflen, void *setup_packet, dwc_dma_t setup_dma, uint32_t flags, uint16_t interval)
 Sets dwc_otg_hcd_urb parameters.
uint32_t dwc_otg_hcd_urb_get_status (dwc_otg_hcd_urb_t *dwc_otg_urb)
 Gets status from dwc_otg_hcd_urb.
uint32_t dwc_otg_hcd_urb_get_actual_length (dwc_otg_hcd_urb_t *dwc_otg_urb)
 Gets actual length from dwc_otg_hcd_urb.
uint32_t dwc_otg_hcd_urb_get_error_count (dwc_otg_hcd_urb_t *dwc_otg_urb)
 Gets error count from dwc_otg_hcd_urb.
void dwc_otg_hcd_urb_set_iso_desc_params (dwc_otg_hcd_urb_t *dwc_otg_urb, int desc_num, uint32_t offset, uint32_t length)
 Set ISOC descriptor offset and length.
uint32_t dwc_otg_hcd_urb_get_iso_desc_status (dwc_otg_hcd_urb_t *dwc_otg_urb, int desc_num)
 Get status of ISOC descriptor, specified by desc_num.
uint32_t dwc_otg_hcd_urb_get_iso_desc_actual_length (dwc_otg_hcd_urb_t *dwc_otg_urb, int desc_num)
 Get actual length of ISOC descriptor, specified by desc_num.
int dwc_otg_hcd_is_bandwidth_allocated (dwc_otg_hcd_t *hcd, void *ep_handle)
 Call this function to check if bandwidth was allocated for specified endpoint.
int dwc_otg_hcd_is_bandwidth_freed (dwc_otg_hcd_t *hcd, void *ep_handle)
 Call this function to check if bandwidth was freed for specified endpoint.
uint8_t dwc_otg_hcd_get_ep_bandwidth (dwc_otg_hcd_t *hcd, void *ep_handle)
 Returns bandwidth allocated for specified endpoint in microseconds.
void dwc_otg_hcd_dump_state (dwc_otg_hcd_t *hcd)
 Dumps hcd state.
void dwc_otg_hcd_dump_frrem (dwc_otg_hcd_t *hcd)
 Dump the average frame remaining at SOF.

Variables

static dwc_otg_cil_callbacks_t hcd_cil_callbacks
 HCD Callback structure for handling mode switching.


Detailed Description

This file implements HCD Core.

All code in this file is portable and don't use any OS specific functions. Interface provided by HCD Core is defined in <hcd_if.h> header file.

Definition in file dwc_otg_hcd.c.


Function Documentation

void dwc_otg_hcd_connect_timeout ( void *  ptr  ) 

Connection timeout function.

An OTG host is required to display a message if the device does not connect within 10 seconds.

Definition at line 54 of file dwc_otg_hcd.c.

static void hcd_start_func ( void *  _vp  )  [static]

Work queue function for starting the HCD when A-Cable is connected.

The hcd_start() must be called in a process context.

Definition at line 123 of file dwc_otg_hcd.c.

static void kill_urbs_in_qh_list ( dwc_otg_hcd_t hcd,
dwc_list_link_t *  qh_list 
) [static]

Processes all the URBs in a single list of QHs.

Completes them with -ETIMEDOUT and frees the QTD.

Definition at line 154 of file dwc_otg_hcd.c.

static void kill_all_urbs ( dwc_otg_hcd_t hcd  )  [static]

Responds with an error status of ETIMEDOUT to all URBs in the non-periodic and periodic schedules.

The QTD associated with each URB is removed from the schedule and freed. This function may be called when a disconnect is detected or when the HCD is being stopped.

Definition at line 182 of file dwc_otg_hcd.c.

static void dwc_otg_hcd_start_connect_timer ( dwc_otg_hcd_t hcd  )  [static]

Start the connection timer.

An OTG host is required to display a message if the device does not connect within 10 seconds. The timer is deleted if a port connect interrupt occurs before the timer expires.

Definition at line 198 of file dwc_otg_hcd.c.

static int32_t dwc_otg_hcd_session_start_cb ( void *  p  )  [static]

HCD Callback function for disconnect of the HCD.

Parameters:
p void pointer to the struct usb_hcd

Definition at line 208 of file dwc_otg_hcd.c.

static int32_t dwc_otg_hcd_start_cb ( void *  p  )  [static]

HCD Callback function for starting the HCD when A-Cable is connected.

Parameters:
p void pointer to the struct usb_hcd

Definition at line 223 of file dwc_otg_hcd.c.

static int32_t dwc_otg_hcd_disconnect_cb ( void *  p  )  [static]

HCD Callback function for disconnect of the HCD.

Parameters:
p void pointer to the struct usb_hcd

Definition at line 253 of file dwc_otg_hcd.c.

static int32_t dwc_otg_hcd_stop_cb ( void *  p  )  [static]

HCD Callback function for stopping the HCD.

Parameters:
p void pointer to the struct usb_hcd

Definition at line 373 of file dwc_otg_hcd.c.

static int dwc_otg_hcd_rem_wakeup_cb ( void *  p  )  [static]

HCD Callback function for Remote Wakeup.

Parameters:
p void pointer to the struct usb_hcd

Definition at line 403 of file dwc_otg_hcd.c.

void dwc_otg_hcd_stop ( dwc_otg_hcd_t hcd  ) 

Halts the DWC_otg host mode operations in a clean manner.

USB transfers are stopped.

Definition at line 422 of file dwc_otg_hcd.c.

int dwc_otg_hcd_urb_enqueue ( dwc_otg_hcd_t dwc_otg_hcd,
dwc_otg_hcd_urb_t dwc_otg_urb,
void **  ep_handle 
)

Queue URB.

After transfer is completes, the complete callback will be called with the URB status

Parameters:
dwc_otg_hcd The HCD
dwc_otg_urb DWC_OTG URB
ep_handle Out parameter for returning endpoint handle
Returns -DWC_E_NO_DEVICE if no device is connected. Returns -DWC_E_NO_MEMORY if there is no enough memory. Returns 0 on success.

Definition at line 444 of file dwc_otg_hcd.c.

int dwc_otg_hcd_urb_dequeue ( dwc_otg_hcd_t dwc_otg_hcd,
dwc_otg_hcd_urb_t dwc_otg_urb 
)

De-queue the specified URB.

Parameters:
dwc_otg_hcd The HCD
dwc_otg_urb DWC_OTG URB

Definition at line 489 of file dwc_otg_hcd.c.

int dwc_otg_hcd_endpoint_disable ( dwc_otg_hcd_t hcd,
void *  ep_handle,
int  retry 
)

Frees resources in the DWC_otg controller related to a given endpoint.

Any URBs for the endpoint must already be dequeued.

Parameters:
hcd The HCD
ep_handle Endpoint handle, returned by dwc_otg_hcd_urb_enqueue function
retry Number of retries if there are queued transfers.
Returns -DWC_E_INVALID if invalid arguments are passed. Returns 0 on success

Definition at line 547 of file dwc_otg_hcd.c.

int dwc_otg_hcd_init ( dwc_otg_hcd_t hcd,
dwc_otg_core_if_t core_if 
)

This function should be called to initiate HCD Core.

Parameters:
hcd The HCD
core_if The DWC_OTG Core
Returns -DWC_E_NO_MEMORY if no enough memory. Returns 0 on success

Definition at line 693 of file dwc_otg_hcd.c.

void dwc_otg_hcd_remove ( dwc_otg_hcd_t hcd  ) 

Frees HCD.

Parameters:
hcd The HCD

Definition at line 778 of file dwc_otg_hcd.c.

static void assign_and_init_hc ( dwc_otg_hcd_t hcd,
dwc_otg_qh_t qh 
) [static]

Assigns transactions from a QTD to a free host channel and initializes the host channel to perform the transactions.

The host channel is removed from the free list.

Parameters:
hcd The HCD state structure.
qh Transactions from the first QTD for this QH are selected and assigned to a free host channel.

Definition at line 832 of file dwc_otg_hcd.c.

dwc_otg_transaction_type_e dwc_otg_hcd_select_transactions ( dwc_otg_hcd_t hcd  ) 

This function selects transactions from the HCD transfer schedule and assigns them to available host channels.

It is called from HCD interrupt handler functions.

Parameters:
hcd The HCD state structure.
Returns:
The types of new transactions that were assigned to host channels.

Definition at line 1055 of file dwc_otg_hcd.c.

static int queue_transaction ( dwc_otg_hcd_t hcd,
dwc_hc_t hc,
uint16_t  fifo_dwords_avail 
) [static]

Attempts to queue a single transaction request for a host channel associated with either a periodic or non-periodic transfer.

This function assumes that there is space available in the appropriate request queue. For an OUT transfer or SETUP transaction in Slave mode, it checks whether space is available in the appropriate Tx FIFO.

Parameters:
hcd The HCD state structure.
hc Host channel descriptor associated with either a periodic or non-periodic transfer.
fifo_dwords_avail Number of DWORDs available in the periodic Tx FIFO for periodic transfers or the non-periodic Tx FIFO for non-periodic transfers.
Returns:
1 if a request is queued and more requests may be needed to complete the transfer, 0 if no more requests are required for this transfer, -1 if there is insufficient space in the Tx FIFO.

Definition at line 1139 of file dwc_otg_hcd.c.

static void process_periodic_channels ( dwc_otg_hcd_t hcd  )  [static]

Processes periodic channels for the next frame and queues transactions for these channels to the DWC_otg controller.

After queueing transactions, the Periodic Tx FIFO Empty interrupt is enabled if there are more transactions to queue as Periodic Tx FIFO or request queue space becomes available. Otherwise, the Periodic Tx FIFO Empty interrupt is disabled.

Definition at line 1199 of file dwc_otg_hcd.c.

static void process_non_periodic_channels ( dwc_otg_hcd_t hcd  )  [static]

Processes active non-periodic channels and queues transactions for these channels to the DWC_otg controller.

After queueing transactions, the NP Tx FIFO Empty interrupt is enabled if there are more transactions to queue as NP Tx FIFO or request queue space becomes available. Otherwise, the NP Tx FIFO Empty interrupt is disabled.

Definition at line 1316 of file dwc_otg_hcd.c.

void dwc_otg_hcd_queue_transactions ( dwc_otg_hcd_t hcd,
dwc_otg_transaction_type_e  tr_type 
)

This function processes the currently active host channels and queues transactions for these channels to the DWC_otg controller.

It is called from HCD interrupt handler functions.

Parameters:
hcd The HCD state structure.
tr_type The type(s) of transactions to queue (non-periodic, periodic, or both).

Definition at line 1426 of file dwc_otg_hcd.c.

int dwc_otg_hcd_hub_control ( dwc_otg_hcd_t dwc_otg_hcd,
uint16_t  typeReq,
uint16_t  wValue,
uint16_t  wIndex,
uint8_t *  buf,
uint16_t  wLength 
)

Handles hub class-specific requests.

Parameters:
dwc_otg_hcd The HCD
typeReq Request Type
wValue wValue from control request
wIndex wIndex from control request
buf data buffer
wLength data buffer length
Returns -DWC_E_INVALID if invalid argument is passed Returns 0 on success

Definition at line 1905 of file dwc_otg_hcd.c.

int dwc_otg_hcd_is_status_changed ( dwc_otg_hcd_t hcd,
int  port 
)

Returns 1 if status of specified port is changed and 0 otherwise.

Parameters:
hcd The HCD
port Port number

Definition at line 2611 of file dwc_otg_hcd.c.

int dwc_otg_hcd_get_frame_number ( dwc_otg_hcd_t hcd  ) 

Returns current frame number.

Parameters:
hcd The HCD

Definition at line 2643 of file dwc_otg_hcd.c.

int dwc_otg_hcd_start ( dwc_otg_hcd_t hcd,
struct dwc_otg_hcd_function_ops fops 
)

This function initializes the HCD Core.

Parameters:
hcd The HCD
fops The Function Driver Operations data structure containing pointers to all callbacks.
Returns -DWC_E_NO_DEVICE if Core is currently is in device mode. Returns 0 on success

Definition at line 2656 of file dwc_otg_hcd.c.

void* dwc_otg_hcd_get_priv_data ( dwc_otg_hcd_t hcd  ) 

Returns private data set by dwc_otg_hcd_set_priv_data function.

Parameters:
hcd The HCD

Definition at line 2671 of file dwc_otg_hcd.c.

void dwc_otg_hcd_set_priv_data ( dwc_otg_hcd_t hcd,
void *  priv_data 
)

Set private data.

Parameters:
hcd The HCD
priv_data pointer to be stored in private data

Definition at line 2676 of file dwc_otg_hcd.c.

uint32_t dwc_otg_hcd_otg_port ( dwc_otg_hcd_t hcd  ) 

Returns otg port number.

Parameters:
hcd The HCD

Definition at line 2681 of file dwc_otg_hcd.c.

uint32_t dwc_otg_hcd_is_b_host ( dwc_otg_hcd_t hcd  ) 

Returns 1 if currently core is acting as B host, and 0 otherwise.

Parameters:
hcd The HCD

Definition at line 2686 of file dwc_otg_hcd.c.

dwc_otg_hcd_urb_t* dwc_otg_hcd_urb_alloc ( dwc_otg_hcd_t hcd,
int  iso_desc_count,
int  atomic_alloc 
)

Allocates memory for dwc_otg_hcd_urb structure.

Allocated memory should be freed by call dwc_free function.

Parameters:
hcd The HCD
iso_desc_count Count of ISOC descriptors
atomic_alloc Specefies whether to perform atomic allocation.

Definition at line 2698 of file dwc_otg_hcd.c.

void dwc_otg_hcd_urb_set_pipeinfo ( dwc_otg_hcd_urb_t hcd_urb,
uint8_t  devaddr,
uint8_t  ep_num,
uint8_t  ep_type,
uint8_t  ep_dir,
uint16_t  mps 
)

Set pipe information in URB.

Parameters:
hcd_urb DWC_OTG URB
devaddr Device Address
ep_num Endpoint Number
ep_type Endpoint Type
ep_dir Endpoint Direction
mps Max Packet Size

Definition at line 2717 of file dwc_otg_hcd.c.

void dwc_otg_hcd_urb_set_params ( dwc_otg_hcd_urb_t urb,
void *  urb_handle,
void *  buf,
dwc_dma_t  dma,
uint32_t  buflen,
void *  sp,
dwc_dma_t  sp_dma,
uint32_t  flags,
uint16_t  interval 
)

Sets dwc_otg_hcd_urb parameters.

Parameters:
urb DWC_OTG URB allocated by dwc_otg_hcd_urb_alloc function.
urb_handle Unique handle for request, this will be passed back to function driver in completion callback.
buf The buffer for the data
dma The DMA buffer for the data
buflen Transfer length
sp Buffer for setup data
sp_dma DMA address of setup data buffer
flags Transfer flags
interval Polling interval for interrupt or isochronous transfers.

Definition at line 2730 of file dwc_otg_hcd.c.

uint32_t dwc_otg_hcd_urb_get_status ( dwc_otg_hcd_urb_t dwc_otg_urb  ) 

Gets status from dwc_otg_hcd_urb.

Parameters:
dwc_otg_urb DWC_OTG URB

Definition at line 2747 of file dwc_otg_hcd.c.

uint32_t dwc_otg_hcd_urb_get_actual_length ( dwc_otg_hcd_urb_t dwc_otg_urb  ) 

Gets actual length from dwc_otg_hcd_urb.

Parameters:
dwc_otg_urb DWC_OTG URB

Definition at line 2752 of file dwc_otg_hcd.c.

uint32_t dwc_otg_hcd_urb_get_error_count ( dwc_otg_hcd_urb_t dwc_otg_urb  ) 

Gets error count from dwc_otg_hcd_urb.

Only for ISOC URBs

Parameters:
dwc_otg_urb DWC_OTG URB

Definition at line 2757 of file dwc_otg_hcd.c.

void dwc_otg_hcd_urb_set_iso_desc_params ( dwc_otg_hcd_urb_t dwc_otg_urb,
int  desc_num,
uint32_t  offset,
uint32_t  length 
)

Set ISOC descriptor offset and length.

Parameters:
dwc_otg_urb DWC_OTG URB
desc_num ISOC descriptor number
offset Offset from beginig of buffer.
length Transaction length

Definition at line 2762 of file dwc_otg_hcd.c.

uint32_t dwc_otg_hcd_urb_get_iso_desc_status ( dwc_otg_hcd_urb_t dwc_otg_urb,
int  desc_num 
)

Get status of ISOC descriptor, specified by desc_num.

Parameters:
dwc_otg_urb DWC_OTG URB
desc_num ISOC descriptor number

Definition at line 2770 of file dwc_otg_hcd.c.

uint32_t dwc_otg_hcd_urb_get_iso_desc_actual_length ( dwc_otg_hcd_urb_t dwc_otg_urb,
int  desc_num 
)

Get actual length of ISOC descriptor, specified by desc_num.

Parameters:
dwc_otg_urb DWC_OTG URB
desc_num ISOC descriptor number

Definition at line 2776 of file dwc_otg_hcd.c.

int dwc_otg_hcd_is_bandwidth_allocated ( dwc_otg_hcd_t hcd,
void *  ep_handle 
)

Call this function to check if bandwidth was allocated for specified endpoint.

Only for ISOC and INTERRUPT endpoints.

Parameters:
hcd The HCD
ep_handle Endpoint handle

Definition at line 2782 of file dwc_otg_hcd.c.

int dwc_otg_hcd_is_bandwidth_freed ( dwc_otg_hcd_t hcd,
void *  ep_handle 
)

Call this function to check if bandwidth was freed for specified endpoint.

Parameters:
hcd The HCD
ep_handle Endpoint handle

Definition at line 2795 of file dwc_otg_hcd.c.

uint8_t dwc_otg_hcd_get_ep_bandwidth ( dwc_otg_hcd_t hcd,
void *  ep_handle 
)

Returns bandwidth allocated for specified endpoint in microseconds.

Only for ISOC and INTERRUPT endpoints.

Parameters:
hcd The HCD
ep_handle Endpoint handle

Definition at line 2808 of file dwc_otg_hcd.c.

void dwc_otg_hcd_dump_state ( dwc_otg_hcd_t hcd  ) 

Dumps hcd state.

Parameters:
hcd The HCD

Definition at line 2815 of file dwc_otg_hcd.c.

void dwc_otg_hcd_dump_frrem ( dwc_otg_hcd_t hcd  ) 

Dump the average frame remaining at SOF.

This can be used to determine average interrupt latency. Frame remaining is also shown for start transfer and two additional sample points. Currently this function is not implemented.

Parameters:
hcd The HCD

Definition at line 2991 of file dwc_otg_hcd.c.


Variable Documentation

dwc_otg_cil_callbacks_t hcd_cil_callbacks [static]

Initial value:

 {
        .start = dwc_otg_hcd_start_cb,
        .stop = dwc_otg_hcd_stop_cb,
        .disconnect = dwc_otg_hcd_disconnect_cb,
        .session_start = dwc_otg_hcd_session_start_cb,
        .resume_wakeup = dwc_otg_hcd_rem_wakeup_cb,



        .p = 0,
}
HCD Callback structure for handling mode switching.

Definition at line 590 of file dwc_otg_hcd.c.


Generated on Tue May 5 02:22:49 2009 for DesignWare USB 2.0 OTG Controller (DWC_otg) Device Driver by  doxygen 1.4.7