Linux 2.6.31.6
[linux/fpc-iii.git] / arch / powerpc / include / asm / scatterlist.h
blob912bf597870f700188e907c7f424557108a86624
1 #ifndef _ASM_POWERPC_SCATTERLIST_H
2 #define _ASM_POWERPC_SCATTERLIST_H
3 /*
4 * Copyright (C) 2001 PPC64 Team, IBM Corp
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version
9 * 2 of the License, or (at your option) any later version.
12 #ifdef __KERNEL__
13 #include <linux/types.h>
14 #include <asm/dma.h>
16 struct scatterlist {
17 #ifdef CONFIG_DEBUG_SG
18 unsigned long sg_magic;
19 #endif
20 unsigned long page_link;
21 unsigned int offset;
22 unsigned int length;
24 /* For TCE or SWIOTLB support */
25 dma_addr_t dma_address;
26 u32 dma_length;
30 * These macros should be used after a dma_map_sg call has been done
31 * to get bus addresses of each of the SG entries and their lengths.
32 * You should only work with the number of sg entries pci_map_sg
33 * returns, or alternatively stop on the first sg_dma_len(sg) which
34 * is 0.
36 #define sg_dma_address(sg) ((sg)->dma_address)
37 #define sg_dma_len(sg) ((sg)->dma_length)
39 #ifdef __powerpc64__
40 #define ISA_DMA_THRESHOLD (~0UL)
41 #endif
43 #define ARCH_HAS_SG_CHAIN
45 #endif /* __KERNEL__ */
46 #endif /* _ASM_POWERPC_SCATTERLIST_H */