dmamap.h
来自「内核linux2.4.20,可跟rtlinux3.2打补丁 组成实时linux系」· C头文件 代码 · 共 91 行
H
91 行
/* $Id$ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * Copyright (C) 1992 - 1997, 2000 Silicon Graphics, Inc. * Copyright (C) 2000 by Colin Ngam */#ifndef _ASM_SN_DMAMAP_H#define _ASM_SN_DMAMAP_H#include <asm/sn/sv.h>#ifdef __cplusplusextern "C" {#endif/* * Definitions for allocating, freeing, and using DMA maps *//* * DMA map types */#define DMA_SCSI 0#define DMA_A24VME 1 /* Challenge/Onyx only */#define DMA_A32VME 2 /* Challenge/Onyx only */#define DMA_A64VME 3 /* SN0/Racer */#define DMA_EISA 4#define DMA_PCI32 5 /* SN0/Racer */#define DMA_PCI64 6 /* SN0/Racer *//* * DMA map structure as returned by dma_mapalloc() */typedef struct dmamap { int dma_type; /* Map type (see above) */ int dma_adap; /* I/O adapter */ int dma_index; /* Beginning map register to use */ int dma_size; /* Number of map registers to use */ paddr_t dma_addr; /* Corresponding bus addr for A24/A32 */ caddr_t dma_virtaddr; /* Beginning virtual address that is mapped */} dmamap_t;struct alenlist_s;/* * Prototypes of exported functions */extern dmamap_t *dma_mapalloc(int, int, int, int);extern void dma_mapfree(dmamap_t *);extern int dma_map(dmamap_t *, caddr_t, int);extern int dma_map2(dmamap_t *, caddr_t, caddr_t, int);extern paddr_t dma_mapaddr(dmamap_t *, caddr_t);#ifdef LATERextern int dma_mapbp(dmamap_t *, buf_t *, int);#endifextern int dma_map_alenlist(dmamap_t *, struct alenlist_s *, size_t);extern uint ev_kvtoiopnum(caddr_t);/* * These variables are defined in master.d/kernel */extern struct map *a24map[];extern struct map *a32map[];extern int a24_mapsize;extern int a32_mapsize;extern lock_t dmamaplock;extern sv_t dmamapout;#ifdef __cplusplus}#endif/* standard flags values for pio_map routines, * including {xtalk,pciio}_dmamap calls. * NOTE: try to keep these in step with PIOMAP flags. */#define DMAMAP_FIXED 0x1#define DMAMAP_NOSLEEP 0x2#define DMAMAP_INPLACE 0x4#define DMAMAP_FLAGS 0x7#endif /* _ASM_SN_DMAMAP_H */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?