usb_request Struct Reference

A USB request. More...

#include <request.h>

Collaboration diagram for usb_request:

Collaboration graph
[legend]

Data Fields

struct slist buf_list
struct slist_node node
unsigned long flags
void(* req_done )(struct udc *udc, struct usb_request *req)
void * context
int status
size_t bytes_xfered

Detailed Description

A USB request.

This structure keeps track of the data associated with a USB request for use in asynchronous transfers.

Definition at line 75 of file request.h.


Field Documentation

The number of bytes actually transfered. May be less than len if an error occurred, or if the UDC received a short packet.

Definition at line 106 of file request.h.

Referenced by usb_req_init(), and usbb_udc_dma_interrupt().

Arbitrary data pointer associated with this request, for use by the submitter.

Definition at line 95 of file request.h.

Referenced by msc_submit_write_data_req().

unsigned long usb_request::flags

A bitwise combination of the bits defined by enum usb_request_flag.

Definition at line 84 of file request.h.

Referenced by usb_func_get_descriptor(), usb_req_init(), and usbb_udc_submit_in_queue().

void(* usb_request::req_done)(struct udc *udc, struct usb_request *req)

Function to be called when this request is completed.

Parameters:
udc The USB Device Controller that did the request
req The request that was completed.

Referenced by msc_submit_write_data_req(), usb_func_get_descriptor(), usbb_udc_submit_in_queue(), and usbb_udc_submit_out_queue().

Status code set by the UDC driver upon completion of this request.

Definition at line 100 of file request.h.


The documentation for this struct was generated from the following file:

Generated on Tue Sep 15 10:22:31 2009 for libavr32 by  doxygen 1.5.8