| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | #ifndef _ASMARM_SCATTERLIST_H | 
 | 2 | #define _ASMARM_SCATTERLIST_H | 
 | 3 |  | 
 | 4 | #include <asm/memory.h> | 
 | 5 | #include <asm/types.h> | 
 | 6 |  | 
 | 7 | struct scatterlist { | 
 | 8 | 	struct page	*page;		/* buffer page			 */ | 
 | 9 | 	unsigned int	offset;		/* buffer offset		 */ | 
 | 10 | 	dma_addr_t	dma_address;	/* dma address			 */ | 
 | 11 | 	unsigned int	length;		/* length			 */ | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 12 | }; | 
 | 13 |  | 
 | 14 | /* | 
 | 15 |  * These macros should be used after a pci_map_sg call has been done | 
 | 16 |  * to get bus addresses of each of the SG entries and their lengths. | 
 | 17 |  * You should only work with the number of sg entries pci_map_sg | 
 | 18 |  * returns, or alternatively stop on the first sg_dma_len(sg) which | 
 | 19 |  * is 0. | 
 | 20 |  */ | 
 | 21 | #define sg_dma_address(sg)      ((sg)->dma_address) | 
 | 22 | #define sg_dma_len(sg)          ((sg)->length) | 
 | 23 |  | 
 | 24 | #endif /* _ASMARM_SCATTERLIST_H */ |