00001 /* $Id: consts.h 30431 2007-10-24 09:05:58Z sk852421 $ */ 00002 /*****************************************************************************/ 00011 /*****************************************************************************/ 00012 00013 /* (c) 2003 Technische Universitaet Dresden 00014 * This file is part of DROPS, which is distributed under the terms of the 00015 * GNU General Public License 2. Please see the COPYING file for details. 00016 */ 00017 00018 #ifndef _L4_DM_GENERIC_CONSTS_H 00019 #define _L4_DM_GENERIC_CONSTS_H 00020 00021 /* L4/L4Env includes */ 00022 #include <l4/sys/types.h> 00023 00024 /***************************************************************************** 00025 *** Flags / Access rights, the bit mask consists of several parts: 00026 *** 00027 *** 31 23 15 7 0 00028 *** +--------+--------+--------+--------+ 00029 *** | l4rm | DMphys | flags | rights | 00030 *** +--------+--------+--------+--------+ 00031 *** 00032 *** rights Dataspace access rights 00033 *** flags Open / copy / map flags 00034 *** DMphys Additional flags defined by DMphys (l4/dm_phys/consts.h) 00035 *** l4rm Flags defined by region mapper (l4/l4rm/l4rm.h) 00036 *****************************************************************************/ 00037 00038 /* Access rights bits */ 00039 #define L4DM_READ 0x00000001 00042 #define L4DM_WRITE 0x00000002 00045 #define L4DM_RESIZE 0x00000080 00048 #define L4DM_RO (L4DM_READ) 00051 #define L4DM_RW (L4DM_READ | L4DM_WRITE) 00054 #define L4DM_ALL_RIGHTS 0x000000FF 00057 #define L4DM_RIGHTS_MASK 0x000000FF 00058 00059 /* Flags open / copy */ 00060 #define L4DM_CONTIGUOUS 0x00000100 00064 #define L4DM_PINNED 0x00000200 00067 #define L4DM_COW 0x00000400 00072 /* Flags map */ 00073 #define L4DM_MAP_PARTIAL 0x00000800 00076 #define L4DM_MAP_MORE 0x00001000 00081 /* Flags close_all */ 00082 #define L4DM_SAME_TASK 0x00002000 00087 /***************************************************************************** 00088 *** Misc. 00089 *****************************************************************************/ 00090 00091 /* Dataspace name length */ 00092 #define L4DM_DS_NAME_MAX_LEN 32 00093 00094 /* Special arguments */ 00095 #define L4DM_WHOLE_DS (-1) 00103 /* Dataspace manager */ 00104 #define L4DM_DEFAULT_DSM L4_INVALID_ID 00109 #endif /* !_L4_DM_GENERIC_CONSTS_H */