00001
00002
00011
00012
00013
00014
00015
00020 #ifndef __DDE_LINUX_LIB_INCLUDE_INTERNAL_H_
00021 #define __DDE_LINUX_LIB_INCLUDE_INTERNAL_H_
00022
00023 #include <l4/util/macros.h>
00024 #include <linux/vmalloc.h>
00025 #include "__config.h"
00026
00027
00028
00030 struct dde_region
00031 {
00032 l4_addr_t va;
00033 l4_addr_t pa;
00034 l4_size_t size;
00035 struct dde_region *next;
00036 };
00037
00049 static inline void dde_add_region(struct dde_region **head,
00050 l4_addr_t va, l4_addr_t pa, l4_size_t size)
00051 {
00052 struct dde_region *p = vmalloc(sizeof(struct dde_region));
00053
00054 p->va = va;
00055 p->pa = pa;
00056 p->size = size;
00057 p->next = *head;
00058
00059 *head = p;
00060
00061 LOGd(DEBUG_MSG, "new dde_region [0x%08lx, 0x%08lx, %d]", va, pa, size);
00062 }
00063
00079 static inline void dde_remove_region(struct dde_region **head,
00080 l4_addr_t va, l4_addr_t pa, l4_size_t size)
00081 {
00082 #if 1
00083 LOGdL(DEBUG_MSG, "not implemented yet");
00084 #else
00085 struct dde_region *p = *head;
00086
00087 LOGd(DEBUG_MSG, "remove conv_region [0x%08x, %d]", va, size);
00088 #endif
00089 }
00090
00091 #endif