OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [linux-2.4/] [include/] [asm-i386/] [scatterlist.h] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1275 phoenix
#ifndef _I386_SCATTERLIST_H
2
#define _I386_SCATTERLIST_H
3
 
4
/*
5
 * Drivers must set either ->address or (preferred) ->page and ->offset
6
 * to indicate where data must be transferred to/from.
7
 *
8
 * Using ->page is recommended since it handles highmem data as well as
9
 * low mem. ->address is restricted to data which has a virtual mapping, and
10
 * it will go away in the future. Updating to ->page can be automated very
11
 * easily -- something like
12
 *
13
 * sg->address = some_ptr;
14
 *
15
 * can be rewritten as
16
 *
17
 * sg->page = virt_to_page(some_ptr);
18
 * sg->offset = (unsigned long) some_ptr & ~PAGE_MASK;
19
 *
20
 * and that's it. There's no excuse for not highmem enabling YOUR driver. /jens
21
 */
22
struct scatterlist {
23
    char *  address;    /* Location data is to be transferred to, NULL for
24
                         * highmem page */
25
    struct page * page; /* Location for highmem page, if any */
26
    unsigned int offset;/* for highmem, page offset */
27
 
28
    dma_addr_t dma_address;
29
    unsigned int length;
30
};
31
 
32
#define ISA_DMA_THRESHOLD (0x00ffffff)
33
 
34
#endif /* !(_I386_SCATTERLIST_H) */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.