Provided by: kernel-doc-2.4.27_2.4.27-12_all bug


       pci_pool_create  -  Creates a pool of pci consistent memory blocks, for


       struct pci_pool * pci_pool_create (const  char  *name,  struct  pci_dev
       *pdev, size_t size, size_t align, size_t allocation, int flags);


       name         name of pool, for diagnostics

       pdev         pci device that will be doing the DMA

       size         size of the blocks in this pool.

       align        alignment requirement for blocks; must be a power of two

       allocation   returned blocks won’t cross this boundary (or zero)

       flags        SLAB_* flags (not all are supported).


       Returns  a  pci  allocation pool with the requested characteristics, or
       null if one can’t be created.  Given one of these pools, pci_pool_alloc
       may be used to allocate memory.  Such memory will all have "consistent"
       DMA mappings, accessible by the device and  its  driver  without  using
       cache  flushing primitives.  The actual size of blocks allocated may be
       larger than requested because of alignment.

       If allocation is nonzero, objects returned  from  pci_pool_alloc  won’t
       cross  that  size  boundary.   This  is  useful  for devices which have
       addressing restrictions  on  individual  DMA  transfers,  such  as  not
       crossing boundaries of 4KBytes.