blob: 7f729bbfce43bdaa83f36b6cc931ab551809b8f4 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * This file is subject to the terms and conditions of the GNU General Public
3 * License. See the file "COPYING" in the main directory of this archive
4 * for more details.
5 *
6 * include/asm-sh64/scatterlist.h
7 *
8 * Copyright (C) 2003 Paul Mundt
9 *
10 */
11#ifndef __ASM_SH64_SCATTERLIST_H
12#define __ASM_SH64_SCATTERLIST_H
13
Jean Delvarea9dfd282007-03-06 02:45:12 -080014#include <asm/types.h>
15
Linus Torvalds1da177e2005-04-16 15:20:36 -070016struct scatterlist {
Jens Axboed6ec0842007-10-22 20:01:06 +020017#ifdef CONFIG_DEBUG_SG
18 unsigned long sg_magic;
19#endif
Jens Axboe18dabf42007-10-22 19:57:20 +020020 unsigned long page_link;
Linus Torvalds1da177e2005-04-16 15:20:36 -070021 unsigned int offset;/* for highmem, page offset */
22 dma_addr_t dma_address;
23 unsigned int length;
24};
25
Robert P. J. Daycbd627a2007-10-30 13:08:47 +090026/* These macros should be used after a pci_map_sg call has been done
27 * to get bus addresses of each of the SG entries and their lengths.
28 * You should only work with the number of sg entries pci_map_sg
29 * returns, or alternatively stop on the first sg_dma_len(sg) which
30 * is 0.
31 */
32#define sg_dma_address(sg) ((sg)->dma_address)
33#define sg_dma_len(sg) ((sg)->length)
34
Linus Torvalds1da177e2005-04-16 15:20:36 -070035#define ISA_DMA_THRESHOLD (0xffffffff)
36
37#endif /* !__ASM_SH64_SCATTERLIST_H */