blob: 5f686ca008d765245c40145a6335c2748d1b40df [file] [log] [blame]
preludedrewf4ed1b62010-12-30 20:53:51 -07001/*
2 * dspbridge/mpu_api/inc/memdefs.h
3 *
4 * DSP-BIOS Bridge driver support functions for TI OMAP processors.
5 *
6 * Copyright (C) 2007 Texas Instruments, Inc.
7 *
8 * This program is free software; you can redistribute it and/or modify it
9 * under the terms of the GNU Lesser General Public License as published
10 * by the Free Software Foundation version 2.1 of the License.
11 *
12 * This program is distributed .as is. WITHOUT ANY WARRANTY of any kind,
13 * whether express or implied; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 */
17
18
19/*
20 * ======== memdefs.h ========
21 * Purpose:
22 * Global MEM constants and types, shared between WSX, WCD, and WMD.
23 *
24 *! Revision History:
25 *! ================
26 *! 28-Aug-2001 ag: Added MEM_[SET][GET]VIRTUALSEGID.
27 *! 10-Aug-1999 kc: Based on wsx-c18.
28 *! 15-Nov-1996 gp: Renamed from wsxmem.h and moved to kwinos.
29 *! 21-Aug-1996 cr: Created from mem.h.
30 */
31
32#ifndef MEMDEFS_
33#define MEMDEFS_
34
35#ifdef __cplusplus
36extern "C" {
37#endif
38
39/* Memory Pool Attributes: */
40 typedef enum {
41 MEM_PAGED = 0,
42 MEM_NONPAGED = 1,
43 MEM_LARGEVIRTMEM = 2
44 } MEM_POOLATTRS;
45
46/*
47 * MEM_VIRTUALSEGID is used by Node & Strm to access virtual address space in
48 * the correct client process context.
49 */
50#define MEM_SETVIRTUALSEGID 0x10000000
51#define MEM_GETVIRTUALSEGID 0x20000000
52#define MEM_MASKVIRTUALSEGID (MEM_SETVIRTUALSEGID | MEM_GETVIRTUALSEGID)
53
54#ifdef LINUX
55
56#define TO_VIRTUAL_UNCACHED(x) x
57#define INTREG_TO_VIRTUAL_UNCACHED(x) x
58
59#endif
60
61#ifdef __cplusplus
62}
63#endif
64#endif /* MEMDEFS_ */