1/* 2 * include/asm-xtensa/scatterlist.h 3 * 4 * This file is subject to the terms and conditions of the GNU General Public 5 * License. See the file "COPYING" in the main directory of this archive 6 * for more details. 7 * 8 * Copyright (C) 2001 - 2005 Tensilica Inc. 9 */ 10 11#ifndef _XTENSA_SCATTERLIST_H 12#define _XTENSA_SCATTERLIST_H 13 14#include <asm/types.h> 15 16struct scatterlist { 17#ifdef CONFIG_DEBUG_SG 18 unsigned long sg_magic; 19#endif 20 unsigned long page_link; 21 unsigned int offset; 22 dma_addr_t dma_address; 23 unsigned int length; 24}; 25 26/* 27 * These macros should be used after a pci_map_sg call has been done 28 * to get bus addresses of each of the SG entries and their lengths. 29 * You should only work with the number of sg entries pci_map_sg 30 * returns, or alternatively stop on the first sg_dma_len(sg) which 31 * is 0. 32 */ 33#define sg_dma_address(sg) ((sg)->dma_address) 34#define sg_dma_len(sg) ((sg)->length) 35 36 37#define ISA_DMA_THRESHOLD (~0UL) 38 39#endif /* _XTENSA_SCATTERLIST_H */ 40