Provided by: linux-doc-2.6.15_2.6.15-23.39_all bug

NAME

       usb_ep_alloc_buffer - allocate an I/O buffer

SYNOPSIS

       void * usb_ep_alloc_buffer  (struct usb_ep * ep, unsigned len,
                                      dma_addr_t * dma, gfp_t gfp_flags);

ARGUMENTS

       ep     the endpoint associated with the buffer

       len    length of the desired buffer

       dma    pointer to the buffer’s DMA address; must be valid

       gfp_flags
              GFP_* flags to use

DESCRIPTION

       Returns a new buffer, or null if one could not be allocated. The buffer
       is  suitably aligned for dma, if that endpoint uses DMA, and the caller
       won’t have to care  about  dma-inconsistency  or  any  hidden  ‘‘bounce
       buffer’’  mechanism.  No  additional  per-request  DMA  mapping will be
       required for such buffers. Free it later with usb_ep_free_buffer.

       You don’t need to use this call to allocate I/O buffers unless you want
       to  make  sure  drivers  don’t  incur  costs for such ‘‘bounce buffer’’
       copies or per-request DMA mappings.

AUTHOR

       David Brownell <dbrownell@users.sourceforge.net>.