Subversion Repositories Kolibri OS

Rev

Rev 3243 | Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. #ifndef __ASM_GENERIC_SCATTERLIST_H
  2. #define __ASM_GENERIC_SCATTERLIST_H
  3.  
  4. #include <linux/types.h>
  5.  
  6. struct scatterlist {
  7. #ifdef CONFIG_DEBUG_SG
  8.         unsigned long   sg_magic;
  9. #endif
  10.         unsigned long   page_link;
  11.         unsigned int    offset;
  12.         unsigned int    length;
  13.         dma_addr_t      dma_address;
  14. #ifdef CONFIG_NEED_SG_DMA_LENGTH
  15.         unsigned int    dma_length;
  16. #endif
  17. };
  18.  
  19. /*
  20.  * These macros should be used after a dma_map_sg call has been done
  21.  * to get bus addresses of each of the SG entries and their lengths.
  22.  * You should only work with the number of sg entries pci_map_sg
  23.  * returns, or alternatively stop on the first sg_dma_len(sg) which
  24.  * is 0.
  25.  */
  26. #define sg_dma_address(sg)      ((sg)->dma_address)
  27.  
  28. #ifdef CONFIG_NEED_SG_DMA_LENGTH
  29. #define sg_dma_len(sg)          ((sg)->dma_length)
  30. #else
  31. #define sg_dma_len(sg)          ((sg)->length)
  32. #endif
  33.  
  34. #define ARCH_HAS_SG_CHAIN
  35.  
  36. #endif /* __ASM_GENERIC_SCATTERLIST_H */
  37.