scatterlist.h 778 B

123456789101112131415161718192021222324252627282930313233
  1. #ifndef _ASM_X86_SCATTERLIST_H
  2. #define _ASM_X86_SCATTERLIST_H
  3. #include <asm/types.h>
  4. struct scatterlist {
  5. #ifdef CONFIG_DEBUG_SG
  6. unsigned long sg_magic;
  7. #endif
  8. unsigned long page_link;
  9. unsigned int offset;
  10. unsigned int length;
  11. dma_addr_t dma_address;
  12. unsigned int dma_length;
  13. };
  14. #define ARCH_HAS_SG_CHAIN
  15. #define ISA_DMA_THRESHOLD (0x00ffffff)
  16. /*
  17. * These macros should be used after a pci_map_sg call has been done
  18. * to get bus addresses of each of the SG entries and their lengths.
  19. * You should only work with the number of sg entries pci_map_sg
  20. * returns.
  21. */
  22. #define sg_dma_address(sg) ((sg)->dma_address)
  23. #ifdef CONFIG_X86_32
  24. # define sg_dma_len(sg) ((sg)->length)
  25. #else
  26. # define sg_dma_len(sg) ((sg)->dma_length)
  27. #endif
  28. #endif /* _ASM_X86_SCATTERLIST_H */